C#连接数据库的四种方法

在进行以下连接数据库之前,请先在本地安装好Oracle Client,同时本次测试System.Data的版本为:2.0.0.0。

在安装Oracle Client上请注意,如果OS是3-BIT请安装32-BIT的Oracle Client,但OS是64-BIT,需要根据实际情况安装,如果你的APP是按32-BIT运行的,则需要安装32-BIT客户端,如果是按64位运行的,则安装64位客户端,而不是OS是64-BIT的,就要安装64-BIT的ORACLE客户端。

 

本次测试会在32-BIT 和64-BIT 上同时测试,32-BIT Oracle10G。

1.ODBC

      1.1   首先需要在控制面板->管理工具->数据源(odbc)。

     1.2  using System.Data.Odbc;

     1.3  连接数据库

         OdbcConnection conn = new OdbcConnection(DSN=XXX;UID=XXX;Pwd=XXX;);
         conn.Open();              
         conn.Close();     

32-BIT 和64-BIT 都OK。

2.OleDb(OraOLEDB.Oracle安装ODAC101040)

      2.1  OleDB连接驱动有MSDAORA和OraOLEDB.Oracle,他们分别由微软和Oracle提供。使用OraOLEDB.Oracle驱动,需要安装Oracle Data Provider for OLE DB 。在32位机器上两者都可以,在64位机器上,使用“MSDAORA”会出现“未在本地计算机上注册“MSDAORA.1”提供程序”的问题,OraOLEDB.Oracle一切正常。

   2.2 连接数据库  

           //using System.Data.OleDb;

            OleDbConnection conn = new OleDbConnection("Provider=MSDAORA.1;User ID=XXX;password=XXX;Data Source=XXX;Persist Security Info=False");  Provider需要根据实际情况修改
            conn.Open();               
            conn.Close();

3.OracleClient(ODAC121010Beta2_32bit支持oraclient)

       3.1     //using System.Data.OracleClient;

       3.2     连接数据库

                 OracleConnection conn = new OracleConnection(“data source=XXX;user=XXX;password=XXX;”);
             conn.Open();
             conn.Close();

32-BIT 和64-BIT 都OK。

4.OracleDataAccess

   4.1  //Using Oracle.DataAccess.Client 需要安装 Oracle Data Providerfor .NET Framework 2

   4.2  连接数据库

        Oracle.DataAccess.Client.OracleConnection conn = new Oracle.DataAccess.Client.OracleConnection("Data Source=yellow;user Id=Knemes;Password=oracle");
        conn.Open();                
        conn.Close();

 32-BIT 和64-BIT 都OK,但需要注意你的版本。

安装问题

  1. 安装oracle10g的时候,出现此问题,如图:

    win7安装Oracle10g,程序出现内部错误
  2.  

    此问题的解决方案为:

         右键安装程序(setup.exe) -> 属性 -> 兼容性 -> 以兼容模式运行这个程序 windows xp( service pack 3)然后使用管理员身份运行程序。如图:

         问题解决。

    win7安装Oracle10g,程序出现内部错误
  3.  

    请注意兼容性选项中一定要选择windowsXP(service pack 3)不要选择win7,否则错误无法解决。

原文地址:https://www.cnblogs.com/jichunhu/p/4094339.html