Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment se connecter à la base de données Oracle 11 à partir de . rapporter

Je connais 17 façons de se connecter à une base de données Oracle à partir d'une application .NET.

  • ODBC avec pilote d'Oracle

     var connectString = "Driver={Oracle in OraClient11g_home1};Uid=scott;Pwd=secret;DBQ=orcl1";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    

    (nom exact du pilote Oracle in OraClient11g_home1 dépend de la version d'Oracle installée)

  • ODBC avec pilote de Microsoft (uniquement pour 32 bits, obsolète, ne fonctionne plus avec Oracle Client 18c ou plus récent)

     var connectString = "Driver={Microsoft ODBC for Oracle};Uid=scott;Pwd=secret;Server=orcl1";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    
  • Fournisseur Oracle pour OLE DB

     var connectString = "Provider=OraOLEDB.Oracle;Data Source=orcl1;Password=secret;User ID=scott";
     var con = new System.Data.OleDb.OleDbConnection(connectString);
     con.Open();
    
  • Fournisseur Microsoft OLE DB pour Oracle (uniquement pour 32 bits, obsolète, ne fonctionne plus avec Oracle Client 18c ou plus récent)

     var connectString = "Provider=MSDAORA;Data Source=orcl1;Password=secret;User ID=scott";
     var con = new System.Data.OleDb.OleDbConnection(connectString);
     con.Open();
    
  • Fournisseur de données Microsoft .NET Framework pour Oracle (obsolète)

     var connectString = "Data Source=orcl1;User ID=scott;Password=secret";
     var con = new System.Data.OracleClient.OracleConnection(connectString);
     con.Open();
    
  • Fournisseur de données Oracle pour .NET (ODP.NET)

     var connectString = "Data Source=orcl1;User ID=scott;Password=secret";
     var con = new Oracle.DataAccess.Client.OracleConnection(connectString);
     con.Open();
    
  • Fournisseur de données Oracle pour .NET, pilote géré (pilote géré ODP.NET)

     var connectString = "Data Source=orcl1;User ID=scott;Password=secret";
     var con = new Oracle.ManagedDataAccess.Client.OracleConnection(connectString);
     con.Open();
    
  • dotConnect pour Oracle de Devart (anciennement connu sous le nom d'OraDirect .NET de Core Lab)

     var connectString = "Data Source=orcl1;User ID=scott;Password=secret";
     var con = new Devart.Data.Oracle.OracleConnection(connectString);
     con.Open();
    
  • dotConnect Universal de Devart (utilise System.Data.OracleClient obsolète )

     var connectString = "Provider=OracleClient;Data Source=orcl1;User ID=scott;Password=secret";
     var con = new Devart.Data.Universal.UniConnection(connectString);
     con.Open();
    
  • ODBC avec pilote de Devart

     var connectString = "Driver={Devart ODBC Driver for Oracle};Uid=scott;Pwd=secret;Server=orcl1";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    
  • DataDirect Connect pour ADO.NET de Progress

     var connectString = "Data Source=orcl1;User ID=scott;Password=secret";
     var con = new DDTek.Oracle.OracleConnection(connectString);
     con.Open();
    
  • ODBC avec pilote de Progress

     var connectString = "Driver={DataDirect 8.0 Oracle Wire Protocol};Uid=scott;Pwd=secret;ServerName=orcl1";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    
  • ODBC avec le pilote Oracle d'Easysoft (n'a pas fonctionné pour moi)

     var connectString = "Driver={Easysoft ODBC-Oracle Driver};Database=orcl1;Uid=scott;Pwd=secret;Server=orcl1;SID=orcl1";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    
  • ODBC avec le pilote Oracle WP d'Easysoft (n'a pas fonctionné pour moi)

     var connectString = "Driver={Easysoft ODBC-Oracle WP Driver};Database=orcl1;Uid=scott;Pwd=secret;Server=orcl1;SID=orcl1";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    
  • Fournisseur ADO.NET pour Oracle OCI de CData

     var connectString = "Data Source=orcl1;User=scott;Password=secret";
     var con = new System.Data.CData.OracleOci.OracleOciConnection(connectString);
     con.Open();
    
  • ODBC avec pilote pour Oracle OCI de CData

     var connectString = "Driver={CData ODBC Driver for Oracle OCI};Data Source=orcl1;User=scott;Password=secret";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    
  • ODBC avec pilote Oracle avec connecteur SQL de Magnitude (anciennement Simba)

     var connectString = "Driver={Simba Oracle ODBC Driver};TNS=orcl1;UID=scott;PWD=secret";
     var con = new System.Data.Odbc.OdbcConnection(connectString);
     con.Open();
    

En général, tous fonctionnent. Pour une nouvelle application, vous devez utiliser ODP.NET ou pilote géré ODP.NET . Pilote géré ODP.NET est assez nouveau et a encore quelques limitations et aussi les bogues "les plus récents".

Les fournisseurs tiers peuvent entraîner des frais supplémentaires.

En dehors du pilote géré ODP.NET , Progress et pilote Easysoft ODBC-Oracle WP tous les pilotes/fournisseurs doivent avoir un client Oracle (instantané) installé.

J'ai développé une application dans github qui exécute toutes ces 32 variantes (17 64 bits + 15 32 bits) à la fois.