C# 连接 Oracle 的几种方式

如题所述

一:通过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# 连接 Oracle 的几种方式
温馨提示:内容为网友见解,仅供参考
无其他回答

C# 连接 Oracle 的几种方式
五:使用ODP连接

如何实现C#与Oracle数据库的链接,是实现链接的具体操作,不是链接代码...
1、VS2010菜单栏中选择视图,点击服务器资源管理器 2、对‘数据连接’右键,选择添加链接 数据源选择‘Oracle数据库,服务器名框中输入一个点(.)3、选择或输入一个数据库名中你点击下拉框选择你要的数据库,然后点击确定 4、上面步骤完成后,第二部中的’数据库连接‘的下拉框中就会出现你刚刚已经连...

C#连接oracle连接字符串怎么写啊?
在C#中,连接到Oracle数据库需要一个正确的连接字符串。以下是一个示例连接字符串及其组成部分说明:1. `Data Source`: 指定数据库服务器的地址。这里使用的是IP地址`192.168.1.210`。2. `(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.210)(PORT=1521)))`: 这一部分描述了如何连接到...

在vs2010中使用c# 连接oracle 11g
第一种:微软提供的连接方法 : using System.Data.OracleClient;第二种:Oracle自己提供的方法:using Oracle.DataAccess.Client;连接字符串:connectionString="Password=czh;User ID=czh;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XXX.XXX.XXX.XXX)(PORT=1521)))(CONNECT_...

C#中如何把Oracle数据库查询的结果集返回
1、首先通过DLL方式进行连接数据库, 也是一个比较通用的方式,项目引入后,即可使用,非常方便,使用之前如有把封装的DLL文件引入自己的项目中,项目里就可以直接调用。2、可以通过System.Data.oracleClient方式进行连接数据库,查询相关数据,连接前需要在oracle客户端进行配置连接数据服务地址(tnsnames.ora)...

c#怎么把datatable插入oracle数据库 c#把datatable插入oracle数据...
c#把datatable插入oracle数据库?一起来看看吧。使用SqlBulkCopy将DataTable中的数据批量插入数据库中。首先使用conStr参数new一个SqlBulkCopy对象,把对应的参数,然后把数据写入进去,数据写入之后关闭连接。注意DataTable中的列需要与数据库表中的列完全一致,在使用sqlRevdBulkCopy函数来实现数据插入,注意不...

c#通过oledb连接Oracle代码
string ConnectionString = "Data Source=orcl; User Id=SCOTT; Password=scott"; \/\/连接字符串 OracleConnection conn = new OracleConnection(ConnectionString); \/\/创建一个新连接 try { conn.Open(); \/\/打开连接 OracleCommand cmd = conn.CreateCommand();cmd.CommandText = "select * from emp...

C#连接Oracle的时候,Oracle.DataAccess.dll能连接数据库,Oracle.Mana...
Oracle.DataAccess.dll需要安装Oracle客户端,不能使用域名或ip Oracle.ManagedDataAccess新一代的连接工具,不依赖Oracle客户端

怎样用c#.net制作水晶报表并且连接Oracle数据库
第二,在CrystalReports库中选择使用报表向导,标准,确定。然后在弹出的创建报表向导中展开创建新连接,选择OLE DB,然后选择一个提供程序,我选择的是Micrisoft OLEDB Provider for Sql server ,若是Oracle 则选择相应的提供程序。第三,选择下一步,选择则你所要连接数据库的服务器名称,用户名,密码,...

C# Oracle批量写入数据
1. **OracleDataAdapter.Update(DataTable dataTable)**:这种方式提供了一个批量提交的方式,但在效率方面并没有明显的提升。它的主要问题是仅提供了一个内部事务(UseInternalTransaction),仅用于保证此次提交数据的一次性,且不支持事务管理的灵活性。此外,如果数据主键重复,依然可以写入成功,导致表...

相似回答
大家正在搜