Ich kenne 17 Möglichkeiten, um von einer .NET-Anwendung aus eine Verbindung zu einer Oracle-Datenbank herzustellen.
-
ODBC mit Treiber von Oracle
var connectString = "Driver={Oracle in OraClient11g_home1};Uid=scott;Pwd=secret;DBQ=orcl1"; var con = new System.Data.Odbc.OdbcConnection(connectString); con.Open();
(genauer Treibername
Oracle in OraClient11g_home1
hängt von der installierten Oracle-Version ab) -
ODBC mit Treiber von Microsoft (nur für 32bit, veraltet, funktioniert nicht mehr mit Oracle Client 18c oder neuer)
var connectString = "Driver={Microsoft ODBC for Oracle};Uid=scott;Pwd=secret;Server=orcl1"; var con = new System.Data.Odbc.OdbcConnection(connectString); con.Open();
-
Oracle-Provider für 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();
-
Microsoft OLE DB Provider for Oracle (nur für 32bit, veraltet, funktioniert nicht mehr mit Oracle Client 18c oder neuer)
var connectString = "Provider=MSDAORA;Data Source=orcl1;Password=secret;User ID=scott"; var con = new System.Data.OleDb.OleDbConnection(connectString); con.Open();
-
Microsoft .NET Framework-Datenanbieter für Oracle (veraltet)
var connectString = "Data Source=orcl1;User ID=scott;Password=secret"; var con = new System.Data.OracleClient.OracleConnection(connectString); con.Open();
-
Oracle-Datenanbieter für .NET (ODP.NET)
var connectString = "Data Source=orcl1;User ID=scott;Password=secret"; var con = new Oracle.DataAccess.Client.OracleConnection(connectString); con.Open();
-
Oracle-Datenanbieter für .NET, verwalteter Treiber (ODP.NET-verwalteter Treiber)
var connectString = "Data Source=orcl1;User ID=scott;Password=secret"; var con = new Oracle.ManagedDataAccess.Client.OracleConnection(connectString); con.Open();
-
dotConnect for Oracle von Devart (früher bekannt als OraDirect .NET von Core Lab)
var connectString = "Data Source=orcl1;User ID=scott;Password=secret"; var con = new Devart.Data.Oracle.OracleConnection(connectString); con.Open();
-
dotConnect Universal von Devart (verwendet veralteten
System.Data.OracleClient
)var connectString = "Provider=OracleClient;Data Source=orcl1;User ID=scott;Password=secret"; var con = new Devart.Data.Universal.UniConnection(connectString); con.Open();
-
ODBC mit Treiber von 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 für ADO.NET von Progress
var connectString = "Data Source=orcl1;User ID=scott;Password=secret"; var con = new DDTek.Oracle.OracleConnection(connectString); con.Open();
-
ODBC mit Treiber von 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 mit Oracle-Treiber von Easysoft (hat bei mir nicht funktioniert)
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 mit Oracle WP Driver von Easysoft (hat bei mir nicht funktioniert)
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();
-
ADO.NET Provider für Oracle OCI von CData
var connectString = "Data Source=orcl1;User=scott;Password=secret"; var con = new System.Data.CData.OracleOci.OracleOciConnection(connectString); con.Open();
-
ODBC mit Treiber für Oracle OCI von 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 mit Oracle-Treiber mit SQL Connector von Magnitude (früher Simba)
var connectString = "Driver={Simba Oracle ODBC Driver};TNS=orcl1;UID=scott;PWD=secret"; var con = new System.Data.Odbc.OdbcConnection(connectString); con.Open();
Im Allgemeinen arbeiten alle. Für neue Anwendungen sollten Sie ODP.NET verwenden oder ODP.NET Managed Driver . ODP.NET-verwalteter Treiber ist ziemlich neu und hat noch ein paar Einschränkungen und auch die "neuesten" Bugs.
Die Drittanbieter können zusätzliche Kosten verursachen.
Abgesehen von ODP.NET Managed Driver , Progress und Easysoft ODBC-Oracle WP-Treiber alle Treiber/Anbieter müssen einen Oracle (Instant-) Client installiert haben.
Ich habe eine Anwendung in GitHub entwickelt, die alle diese 32 (17 64-Bit + 15 32-Bit) Varianten gleichzeitig ausführt.