ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

C# 连接 Oracle 的几种方式

2022-06-28 10:34:06  阅读:174  来源: 互联网

标签:C# System 几种 IFSAPP ex Oracle Data conn


C# 连接 Oracle 的几种方式 Posted on 2013-03-06 13:32 storys 阅读(60836) 评论(2) 编辑 收藏 一:通过System.Data.OracleClient(需要安装Oracle客户端并配置tnsnames.ora) 1. 添加命名空间System.Data.OracleClient引用 2. using System.Data.OracleClient; 3.  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引用 2. using System.Data.OracleClient; 3. 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引用 2. using System.Data.OleDb; 3. 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引用 2. using System.Data.OleDb; 3. 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(http://www.oracle.com/technetwork/developer-tools/visual-studio/downloads/index.html) 2. 安装完全成后会产生一序列文件。 3. 找到这个安装目录,打开文件夹%ORACLE_HOME%\Network\Admin在这个下面建立一个tnsnames.ora的文件,其内容可以参考其下的Sample目录下面的配置 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命名空间 5. using Oracle.DataAccess.Client; 6. 示例代码: 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,下载驱动 http://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命名空间 2. using Devart.Data.Oracle; 3. 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#,System,几种,IFSAPP,ex,Oracle,Data,conn
来源: https://www.cnblogs.com/devgis/p/16418573.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有