C# 连接Oracle数据库

  最近项目要用Oracle数据库,之前没搞过,近2天遇到好多问题,现在总结一下,做个备份。

  一、关于Oracle安装

    1.服务器端 从Oracle官网下载文件,file1和file2,解压之后安装就行了,注意目录不要有中文和空格。

    2.然后配置监听器和服务命名:

      2.1.监听器:

            

      2.2.服务命名

    3.接着是本地客户端的安装:

      3.1 我在这下载的简易客户端:http://pan.baidu.com/share/link?shareid=514153&uk=3255414737 下载之后解压。

      3.2 把服务器上的Oracle目录下的 G:\app\Administrator\product\11.2.0\dbhome_1 找到NETWORK文件夹,拷贝一下,贴到上面那个解压的目录里面,(其实主要是拷贝tnsnames.ora文件,记录的连接信息).

  附图:简易客户端目录:

      3.3 下一步安装pl sql develop.  进入之后 在 perference->Connection里面设置OCI Library和Oracle_Home,例如本机设置为:
        Oracle Home :D:\instantclient_11_2
        OCI Library : D:\instantclient_11_2\oci.dll

      3.4 配置2个环境变量: TNS目录和编码

        TNS_ADMIN : D:\instantclient_11_2\NETWORK\ADMIN

        NLS_LANG  :SIMPLIFIED CHINESE_CHINA.ZHS16GBK

      然后重新允许plsql dev 下拉列表就有数据库了。参考:http://it.oyksoft.com/post/6003/

  

    

  二、C# 连接Oracle 报错:System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本

    网上有说因为NTFS格式 的 权限问题导致了,我到服务器改了一下发现没有效果。后来花1个积分在CSDN上下了一个仅3行txt文档,完美解决。

    文档内容如下:

      (1)在Oracle官方下载instantclient-basic-win32-XXX.zip
      (2)解压文件
      (3)复制“oci.dll”与“oraocieiXX.dll”(注:如果是11g的话就应是“oraociei11.dll”,以此类推)到C:\Windows

    补充一下连接字符串:

     

      

String connection ="Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=60.190.222.192) (PORT=1521)))(CONNECT_DATA=(SERVICE_NAME= orcl)));User Id=xx; Password=xx";
            OracleConnection conn = new OracleConnection(connection);
            conn.Open();

 

            

        

 

  

posted @ 2013-09-25 17:52  WaitingEver  阅读(7534)  评论(1编辑  收藏  举报