Entwickler-Ecke
Datenbanken (inkl. ADO.NET) - Oracle Connection
Xcalibur - Do 28.01.10 15:38
Titel: Oracle Connection
Hey Leute,
Ich möchte mich mit meiner Oracle Datenbank verbinden, aber ich bekomme immer folgende Fehlermeldung.
ORA-06401: NETCMN: ungültiger Treiberbezeichner
Hier mein Code:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| using System.Data.OracleClient; ... OracleConnection conn = new OracleConnection(); conn.ConnectionString = "Data Source=...;"+ "User id=...;"+ "Password=...;"; conn.Open(); |
(Ja ich habe nat. statt den ... die richtigen Werte eingetragen und nur für den Beitrag durch Punkte ersetzt)
Fehlt hier noch ein Parameter im ConnectionString? Oder muss ich noch einen DB Traiber installieren?
Gruß Gernot
ene - Do 28.01.10 16:07
Moin,
ich hab auch so einige Erfahrungen mit Oracle gemacht, es hängt sehr stark vom verwendeten Treibe ab. Beim OracleClient sieht der ConnString bei mir so aus:
C#-Quelltext
1: 2: 3: 4:
| string strCon = "Data Source=(DESCRIPTION=" _ + "(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=NameOderIP)(PORT=1521)))" _ + "(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=DBName)));" _ + "USER ID=User;Password=PW;" |
Ansonsten müsstest du schon verraten, welche Version von Oracle ihr verwendet und welchen Treiber. Oder du schaust dich
hier [
http://www.connectionstrings.com/oracle] mal um.
Xcalibur - Do 28.01.10 16:25
So sah der String bei mir auch aus als ich odp.net verwendet habe.
Wir verwenden die Version 9.2.0 und ich habe jetzt herausgefunden dass alle anderen Anwendungen Java Applikationen sind und demnach auch mit jdbc arbeiten.
Danke für deinen ConnString und den Link aber es funktioniert leider bei keinem -> also ich denke der TReiber ist hier einfach nicht installiert.
Gibt es die Möglichkeit einen Treiber nur als dll in mein Programm einzubinden nud mitzuliefern anstatt ihn auf dem rechner installieren zu müssen?
ene - Do 28.01.10 16:45
So tief musst ich mich zum Glück noch nicht mit Oracle beschäftigen. Die DLL muss mindestens registriert sein. Wobei auf meinen Rechnern auch der OracleClient installiert ist. Das reicht dafür. :(
Xcalibur - Do 28.01.10 17:07
OK dann werd ichs einfach mal installieren müssen.
Gibt es irgeneine minimale Installation den dieses ODP.NET Entwicklertool ist ja ein riesiges Teil mit vielen Sachen die ich einfach nicht brauche und die Clients sind auch nicht gerade klein.
Kann mir vll jemand sagen was ich Minimal installieren muss um das zum laufen zu bringen?
ene - Fr 29.01.10 07:25
Umstellen auf MS Oracle ODBC ;) SCNR
JüTho - Fr 29.01.10 14:30
ene hat folgendes geschrieben : |
Umstellen auf MS Oracle ODBC ;) SCNR |
Ich hoffe, Gernot versteht das nicht falsch und steigt nicht wirklich auf ODBC um - das wäre der größte Blödsinn, den er machen könnte. Auch Oledb und der Oracle-Client, der von MS standardmäßig zu NET hinzugefügt wurde, sind abzulehnen.
@Gernot
Schau einmal unter
connectionstrings [
http://www.connectionstrings.com/default.aspx] nach, welche NET-Provider für Oracle angeboten werden und wie der ConnectionString auszusehen hat. Vielleicht gibt es dort auch etwas, das deinen Ansprüchen an einfache Installation und Nutzung entspricht.
Jürgen
Xcalibur - Mo 01.02.10 08:33
Ich habe mich auf der Seite mal durch die Provider gelesen. Also die MS Treiber sollte ich meiden oder wie war das gemeint?
@ JüTho Tja den ich wollte eig einfach unter Systemsteuerung -> Verwaltung -> ODBC
einiges an Treiber ausprobieren. Sind das jetzt genau die die ich nicht benutzen sollte?
(Also ich habs noch nicht probiert weil ich dafür erst Berechtigungen vom Admin anfordern muss und sowas dauert leider bei uns;) aber ich ich gleich weiß dass es Blödsinn sit dann geh ich gleich einen anderen Weg)
Welchen Provider schlägst du vor?
Gruß Gernot
JüTho - Mo 01.02.10 09:49
Xcalibur hat folgendes geschrieben : |
Ich habe mich auf der Seite mal durch die Provider gelesen. Also die MS Treiber sollte ich meiden oder wie war das gemeint? |
Richtig. Vor ein paar Tagen habe ich in einem anderen Forum einen ausdrücklichen Hinweis darauf gelesen, dass der fehlerhaft ist und von MS nicht mehr gepflegt wird.
Xcalibur hat folgendes geschrieben : |
@ JüTho Tja den ich wollte eig einfach unter Systemsteuerung -> Verwaltung -> ODBC
einiges an Treiber ausprobieren. Sind das jetzt genau die die ich nicht benutzen sollte? |
Richtig. ODBC und auch Oledb sind nur Notlösungen, wenn es wirklich nichts Besseres gibt.
Xcalibur hat folgendes geschrieben : |
Welchen Provider schlägst du vor? |
* Oracle Data Provider ODP.NET: Oracle.DataAccess.Client Namespace
* dotConnect for Oracle (früher CoreLab): Devart.Data.Oracle Namespace
Gruß Jürgen
Xcalibur - Mo 01.02.10 10:52
OK dann werd ich mit ODP.NET versuchen damithab ich schon gearbeitet.
Jedoch ist mir noch nicht genau klar was ich alles brauche. Also ich hab damals das ganze Developer Tool runtergeladen und da war einfach zuviel dabei.
Jetzt hab ich das hier gefunden:
Oracle 10g ODAC 10.1.0.4.0
Oracle Data Provider for .NET 10.1.0.4.0
Oracle ODBC Driver 10.1.0.3.1
Oracle Provider for OLE DB 10.1.0.4.0
Oracle Objects for OLE 10.1.0.5.2
Oracle Services for Microsoft Transaction Server 10.1.0.4.0
ok das werd ich auf dem PC wo ich programmmiere mal installieren. Was mir allerdings noch nicht ganz klar ist.
Muss ich das ganze Zeug auch auf jedem CLient installieren auf dem die Software dann laufen soll.
Reicht z.b. nur der Provider aus?
Und kann ich das ODP.NET Zeug irgendwie so einbinden dass man am Client nichts mehr dazuinstallieren muss.
Gruß Gernot
Xcalibur - Di 02.02.10 11:10
Danke für eure Hilfe. Auf dem Server läuft es nun und ich kann mich verbinden.
Ich werde den DB Zugriff nur auf dem Server laufen lassen und umgehe somit das die CLient auf die DB müssen :)
Gruß Gernot
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!