C#连接Oracle的实例教程


本文摘自PHP中文网,作者零下一度,侵删。

这篇文章主要介绍了C#连接Oracle的方法,结合实例形式总结分析了几种常见的C#连接Oracle数据库的操作技巧与相关注意事项,需要的朋友可以参考下

本文实例总结了C#连接Oracle的方法。分享给大家供大家参考,具体如下:

一、通过System.Data.OracleClient(需要安装Oracle客户端并配置tnsnames.ora)

1. 添加命名空间System.Data.OracleClient引用

1

using System.Data.OracleClient;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

string connString = "User ID=IFSAPP;Password=IFSAPP;Data Source=RACE;";

OracleConnection conn = new OracleConnection(connString);

try

{

  conn.Open();

  MessageBox.Show(conn.State.ToString());

}

catch (Exception ex)

{

  ShowErrorMessage(ex.Message.ToString());

}

finally

{

  conn.Close();

}

二、通过System.Data.OracleClient(需要安装Oracle客户端不需配置tnsnames.ora)

1. 添加命名空间System.Data.OracleClient引用

1

using System.Data.OracleClient;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

string connString = "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)))";

OracleConnection conn = new OracleConnection(connString);

try

{

  conn.Open();

  MessageBox.Show(conn.State.ToString());

}

catch (Exception ex)

{

  ShowErrorMessage(ex.Message.ToString());

}

finally

{

  conn.Close();

}

三、通过System.Data.OleDb和Oracle公司的驱动

1. 添加命名空间System.Data.OracleClient引用

1

using System.Data.OleDb;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

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)))";

OleDbConnection conn = new OleDbConnection(connString);

try

{

  conn.Open();

  MessageBox.Show(conn.State.ToString());

}

catch (Exception ex)

{

  ShowErrorMessage(ex.Message.ToString());

}

finally

{

  conn.Close();

}

四、通过System.Data.OleDb和微软公司的Oracle驱动

1. 添加命名空间System.Data.OracleClient引用

1

using System.Data.OleDb;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

string connString = "Provider=MSDAORA.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)))";

OleDbConnection cnn = new OleDbConnection(connString);

try

{

  conn.Open();

  MessageBox.Show(conn.State.ToString());

}

catch (Exception ex)

{

  ShowErrorMessage(ex.Message.ToString());

}

finally

{

  conn.Close();

}

备注:

a.XP操作系统已经安装了微软公司的Oracle驱动C:\Program Files\Common Files\System\Ole DB\msdaora.dll

b.该驱动需要Oracle客户端的三个文件(oraocixe10.dll、oci.dll、ociw32.dll)放在System32下即可

五、使用ODP连接

1. 下载安装ODP.NET(www.oracle.com/technetwork/developer-tools/visual-studio/downloads/index.html)

2. 安装完全成后会产生一序列文件。

3. 找到这个安装目录,打开文件夹%ORACLE_HOME%\Network\Admin在这个下面建立一个tnsnames.ora的文件,其内容可以参考其下的Sample目录下面的配置

1

2

3

4

5

6

7

8

9

10

11

12

13

14

Oracle.RACE =

(DESCRIPTION=

  (ADDRESS_LIST=

   (ADDRESS=

    (PROTOCOL=TCP)

    (HOST=127.0.0.1)

    (PORT=1521)

   )

  )

  (CONNECT_DATA=

   (SID=RACE)

   (SERVER=DEDICATED)

  )

)

Oracle.RACE为连接字符串名称,可以随便取。等号后面的字符串可以在Enterprise Manager Console工具中连接数据库后的TNS描述符中拷过来

4. 引用Oracle.DataAccess命名空间

1

using Oracle.DataAccess.Client;

6. 示例代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

string connString = "DATA SOURCE=Oracle.RACE;PERSIST SECURITY INFO=True;USER ID=IFSAPP;password=IFSAPP";

OracleConnection conn = new OracleConnection(connString);

try

{

  conn.Open();

  OracleCommand cmd = new OracleCommand(cmdText,conn);

  OracleDataReader reader = cmd.ExecuteReader();

  this.DataGridView1.DataSource = reader;

  this.DataGridView1.DataBind();

}

catch (Exception ex)

{

  ShowErrorMessage(ex.Message.ToString());

}

finally

{

  conn.Close();

}

六、使用第三方驱动

第三方驱动有 Devart,下载驱动www.devart.com/dotconnect/oracle/,但是是商业版,需要购买许可或破解

连接格式 User ID=myUsername;Password=myPassword;Host=ora;Pooling=true;Min Pool Size=0;Max Pool Size=100;Connection Lifetime=0;

1. 引用Devart.Data.Oracle命名空间

1

using Devart.Data.Oracle;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

OracleConnection conn = new OracleConnection();

conn.ConnectionString = "";

conn.Unicode = true;

conn.UserId = "IFSAPP";

conn.Password = "IFSAPP";

conn.Port = 1521;

conn.Server = "127.0.0.1";

conn.Sid = "RACE";

try

{

  conn.Open();

  //execute queries, etc

}

catch (Exception ex)

{

  ShowErrorMessage(ex.Message.ToString());

}

finally

{

  conn.Close();

}

以上就是C#连接Oracle的实例教程的详细内容!

相关阅读 >>

oracle clob字段过长保存出错改如何解决?

解决visual studio 2017创建.net standard类库编译出错的问题

.net mvc 使用ueditor上传图片

有关c#工厂模式简单讲解

hibernate中多对多关系映射

c#如何实现json与对象之间互相转换功能示例

c#中实现复制与删除文件的方法

正则表达式抓取网页信息

pdb是什么文件?

浅谈.net中的浅拷贝和深拷贝

更多相关阅读请进入《csharp》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...