Wenn ich die SQL-Befehlszeile öffne, schreibe ich CONNECT username/[email protected][//]Host[:port][/service_name]
. Ich kann jedoch keine Verbindung von einem .NET-Projekt über eine Verbindungszeichenfolge herstellen. Ich habe viele Dinge wie <add name="ConnectionString" connectionString="Data Source=username/[email protected][//]Host[:port][/service_name];" />
und <add name="ConnectionString" connectionString="server=tcp:Host;Initial Catalog=service_name; user id=username; password=password; Connection Timeout=180;" providerName="System.Data.OracleClient" />
ausprobiert, aber bisher hat nichts funktioniert. Wann immer ich zu sconn.Open();
komme:
var CurrentConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlConnection sconn = new SqlConnection(CurrentConnectionString);
sconn.Open();
Ich bekomme praktisch immer folgenden Fehler:
Ein netzwerkbezogener oder instanzspezifischer Fehler ist aufgetreten, während Herstellen einer Verbindung zu SQL Server. Der Server wurde nicht gefunden oder war nicht erreichbar. Stellen Sie sicher, dass der Instanzname korrekt ist und dass SQL Server ist so konfiguriert, dass Remoteverbindungen zugelassen werden. (Anbieter: SQL Netzwerkschnittstellen, Fehler: 25 - Verbindungszeichenfolge ist ungültig)
Wie kann ich mich korrekt mit der Datenbank verbinden?
Versuchen Sie die folgende Verbindungszeichenfolge
string con = "Data Source=(DESCRIPTION =(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host = 000.00.0.00)(PORT = 0000)))(CONNECT_DATA =(SERVICE_NAME = database)));User ID=User/Schema;Password=password;Unicode=True";
& dann verwenden Sie diese Verbindungszeichenfolge wie folgt
using (OracleConnection objConn = new OracleConnection(con))
{
\\ code
}
Ich empfehle die Verwendung des "Offiziellen Oracle ODP.NET, Managed Driver".
https://www.nuget.org/packages/Oracle.ManagedDataAccess/
Oder eine für das Entity-Framework: https://www.nuget.org/packages/Oracle.ManagedDataAccess.EntityFramework/
Nach der Installation über Visual Studio wird eine Readme-Datei geöffnet, die ich Ihnen auch empfehle.
Oracle bietet umfangreiche Dokumentationen. Hier fangen Sie an:http://www.Oracle.com/technetwork/topics/dotnet/whatsnew/index.html
Sie verwenden System.Data.SqlClient.SqlConnection
, um eine Verbindung zu einem (Microsoft) SQL Server herzustellen, es kann nicht für eine Oracle-Verbindung verwendet werden.
Sie sollten System.Data.OracleClient.OracleConnection
oder Oracle.ManagedDataAccess.Client.OracleConnection
verwenden.
Sehen Sie sich diese Antwort an, um auch andere Möglichkeiten zu sehen: So stellen Sie eine Verbindung zur Oracle 11-Datenbank her. Netz