.net中连接Oracle 的两种方式:OracleClient,OleDb
来源:互联网 发布:mactype mac字体 编辑:程序博客网 时间:2024/04/27 22:56
1. OracleClient方式,是微软专门针对Oracle数据库开发的,仅在 .NET Framework 1.1 版中受支持。据说速度快、性能好,是推荐使用的方式。但根据我的经验,当Oracle数据库服务器端采用英文字符集比如 US7ASCII 时,客户端不管字符集如何设置,读出的中文都是乱码;若服务器端用中文字符集比如 ZHS16GBK ,则无乱码问题。
引用类库:System.Data.OracleClient.dll。
命名空间:System.Data.OracleClient。
常用类:OracleConnection、OracleCommand、OracleDataAdapter、OracleTransaction、OracleDataReader等。
典型连接字符串:“data source=oratest;user id=scott;password=tiger”(注意:可不指定 provider 驱动)。
2. OleDb方式,微软和Oracle公司各自提供了OleDb的驱动程序,使用方法的差别很少。不管Oracle服务器端用何字符集,读写中文均无乱码问题。
相同之处
命名空间:System.Data.OleDb。常用类:OleDbConnection、OleDbCommand、OleDbDataAdapter、OleDbTransaction、OleDbDataReader等。
不同之处
引用类库:微软的只需要System.Data.dll;若用Oracle的驱动,虽然也只要引入System.Data.dll,但前提是首先安装Oracle针对.Net的数据访问组件。
连接字符串:与OracleClient方式相比,要添加一个provider,微软为“provider=MSDAORA.1;”,Oracle为“provider='OraOleDb.Oracle';”。
string connString = "Provider=OraOLEDB.Oracle.1;User ID=IFSAPP;Password=IFSAPP;Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = RACE)))";
使用OleDB组件可以获得比OracleClient更高的效率和性能,因为OleDB是比ADO.NET更底层的组件,ADO.NET也要通过OleDB获取数据。
C# 连接 Oracle 的几种方式
实例连接:
OleDbConnection conn=
try{
}finally{
- .net中连接Oracle 的两种方式:OracleClient,OleDb
- .net中连接Oracle 的两种方式:OracleClient,OleDb
- 【转】oracle 字符集乱码解决-.Net 中读写Oracle数据库常用两种方式:OracleClient和OleDb
- <asp.net>OleDb连接Oracle的两种方法
- C# 连接 Oracle 数据库(三种方式:OracleClient、ODBC、OLEDB)
- OleDB连接Oracle的两种方法
- .net 连接oracle的两种方式
- 使用OracleClient,OLEDB,ODBC,Visual Studio,ODP.NET 来连接 Oracle访问数据库
- .Net 中读写Oracle数据库的两种方式
- .Net 中读写Oracle数据库的两种方式
- .Net 中读写Oracle数据库的两种方式
- .net下OracleClient不能连接Oracle问题
- asp.net 连接oracle 数据库-OracleClient使用
- .NET连接SQLExpress的两种方式
- VS2015连接ORACLE 11G(.NET自带方式 USING SYSTEM.DATA.ORACLECLIENT;)
- Oracle两种连接方式
- .net 连接oracle的几种方式
- .net 连接oracle的几种方式 .
- TCP segment of a reassembled PDU
- IncrediBuild 进行联合编译
- android布局属性详解
- IncrediBuild工具使用及设置
- 快递查询应用实例
- .net中连接Oracle 的两种方式:OracleClient,OleDb
- ClippingNode 实现类似子弹打穿纸片效果
- HDU 4709 三循环暴力
- Java 枚举实现单例
- IncrediBuild联合编译的使用
- 构建高性能服务(一)ConcurrentSkipListMap和链表构建高性能Java Memcached
- 【HDU 1019】Least Common Multiple —— LCM
- SVG图像动画鉴赏
- 给没有毕业的同学