Autor Beitrag
wuschel_core
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Do 07.06.12 10:35 
Hallo Leute !
Also mein Problem ist das ich den ConnectionString nicht hinbekomme um mich mit meiner lokal installierten oracle10g Datenbank zu verbinden!

Mein Versuch ( der nicht funktioniert ) :

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
SqlConnection con = new SqlConnection();
            con.ConnectionString = "Data Source=localhost;" +
                                   "Initial Catalog=Northwind;" +
                                   "User ID=SCOTT;" +
                                   "Password=tiger";


Mfg (;

Moderiert von user profile iconKha: Quote- durch C#-Tags ersetzt
Moderiert von user profile iconTh69: Titel geändert.
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 07.06.12 11:26 
Hallo,

dein ConnectionString sowie die Klasse SqlConnection ist ja auch nur für den MS SQL Server - schau mal unter www.connectionstrings.com für Oracle nach.
Du benötigst einen .NET Provider für Oracle, am besten den Oracle Data Provider for .NET (ODP.NET) und mußt dann auch dessen Klassen benutzen (OracleConnection, OracleCommand, ...).

P.S: Bei Oracle solltest du dann den Eintrag aus deiner "tnsnames.ora" als "Data Source"-Name verwenden.
wuschel_core Threadstarter
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Do 07.06.12 11:49 
Warum muss das immer so kompliziert sein : S

Also sonst verwende ich :
ausblenden C#-Quelltext
1:
2:
3:
OleDbConnection Connection = null;
String connectionString = "Provider=OraOLEDB.Oracle; Data Source=localhost/xe; User Id = SCOTT ;Password = tiger; OLEDB.NET=True;";
Connection = new OleDbConnection(connectionString);


Warum ich das jetzt anders mache ?

SqlCommand braucht man um Proceduren aufzurufen, folgedessen auch die SqlConnection
ausblenden C#-Quelltext
1:
2:
3:
SqlCommand cmd = new SqlCommand();
cmd.Connection = Connection;
cmd.CommandType = CommandType.StoredProcedure;


Heist das ich kann mit Oracle keine SqlCommands verwenden ohne Oracle Data Provider for .NET zu installieren ?

Mfg

Moderiert von user profile iconTh69: Quote- durch C#-Tags ersetzt
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 07.06.12 15:08 
Hallo,

wie schon geschrieben sind die Klassen aus dem Namensbereich System.Data.SqlClient (SqlConnection, SqlCommand, ...) nur für den MS SQL Server.

Wenn du weiterhin OleDb verwenden willst (anstatt den Oracle .NET Provider - welcher aber zu empfehlen ist!), dann mußt du auch die entsprechenden OleDb-Klassen verwenden (OleDbConnection, OleDbCommand):
ausblenden C#-Quelltext
1:
2:
3:
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = Connection;
cmd.CommandType = CommandType.StoredProcedure;
wuschel_core Threadstarter
Hält's aus hier
Beiträge: 9



BeitragVerfasst: Fr 08.06.12 19:21 
Achso jetzt checke ich's : D

ausblenden C#-Quelltext
1:
2:
3:
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = Connection;
cmd.CommandType = CommandType.StoredProcedure;


-> so hats funktioniert mit Oracle

Daanke Mfg

Moderiert von user profile iconChristian S.: Quote- durch C#-Tags ersetzt