1、安装oracle for .net 【oracle data access components ODAC】客户端(从网上找下载地址吧200多M,要分清楚32位64位操作系统),安装成功后odac客户端就会自动添加到环境变量path中,.net也主要根据这个环境变量查找oracle数据库的.ora文件。
2、找到安装目录,D:\app\Administrator\product\11.1.0\client_1\Network\Admin文件夹,配置数据库.ora连接文件,sqlnet.ora和tnsnames.ora,如果没有这两个文件需要自己添加,可以从Sample文件夹拷贝出来,改成自己的数据库地址。
sqlnet.ora文件内容
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
tnsnames.ora文件内容
orclDb=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
3、配置web.config 连接字符串
<add key="oracleStr" value="Data Source=orclDb;User ID=orcl;Password=orcl123"/>
其中Data Source=orclDb要和tnsnames.ora文件配置的实例名相同
User ID连接oracle数据库的用户名,Password连接oracle数据库的密码
4、配置好数据库.ora文件,找到安装目录D:\app\Administrator\product\11.1.0\client_1\odp.net\bin\2.x
主要找odp.net文件夹下的bin目录中的Oracle.DataAccess.dll文件
然后在.net项目中添加Oracle.DataAccess.dll引用
5、在代码中添加
using Oracle.DataAccess.Client;
添加完引用就可以直接使用OracleConnection OracleCommand OracleDataAdapter和sql server的用法一样。
public static DataSet getDataSet(string sql) { DataSet ds = null; OracleConnection con=null; OracleCommand cmd=null; try { con = new OracleConnection(SysConnStr);//SysConnStr连接字符串 con.Open(); cmd = new OracleCommand(); cmd.CommandType = CommandType.Text; cmd.CommandText = sql; cmd.Connection = con; using (OracleDataAdapter ad = new OracleDataAdapter()) { ad.SelectCommand = cmd; ad.Fill(ds); } } catch { } finally { if (cmd != null) { cmd.Dispose(); } if (con.State == ConnectionState.Open) { con.Close(); } } return ds; }