.net不安装Oracle11g客户端直接使用ODAC

好处:

1、不安装客户端也能访问服务器上的oracle(假设Application Server与DB Server 分开)

2、不需要安装ODAC

3、不需要配置TnsNames.Ora文件

缺点:

不能使用odac for .net中对应的工具

步骤:

如果不安装Oracle11g的客户端则需要在程序的debug目录下拷贝如下几个dll文件

oci.dll

oracle.dataaccess.dll

oraops11w.dll

oraociei11.dll

这几个文件可以从下载的ODAC安装包中找到,我下载的是ODTwithODAC112030.zip,由于这些文件都放在..\stage\Components\..下面的压缩包里,所以比较难找,因此可以采用第二种方法:在安装有ODTwithODAC112030的计算机上找到相应的安装目录,将目录下面的对应文件copy出来就可以了

 

建议:在编码的时候最好是安装ODTwithODAC,在服务器上部署的时候不安装

 

代码实例:

usingOracle.DataAccess.Client;

...

stringconnstring =@"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=211.80.205.213)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCL)));User Id=sys;Password=sys;"; //这里可以放到配置文件中

using(OracleConnection conn = newOracleConnection(connstring))

{

  conn.Open();

  stringsql = "select * from users";

  using(OracleCommand comm = newOracleCommand(sql, conn))

  {

    using(OracleDataReader rdr = comm.ExecuteReader())

    {

      while(rdr.Read())

      {

        Console.WriteLine(rdr.GetString(0));

      }

    }

  }

}

 

更加复杂的odp.netpl/sql自定义类型的实例参见http://www.cnblogs.com/KissKnife/archive/2011/04/21/2023472.html

posted @ 2012-05-19 16:56  gisdream  阅读(9110)  评论(1编辑  收藏  举报