Autor Beitrag
Xcalibur
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: Do 28.01.10 15:38 
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:

ausblenden 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
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: 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:

ausblenden 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 mal um.

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
Xcalibur Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: 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. :(

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
Xcalibur Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: Fr 29.01.10 07:25 
Umstellen auf MS Oracle ODBC ;) SCNR

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Fr 29.01.10 14:30 
user profile iconene hat folgendes geschrieben Zum zitierten Posting springen:
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 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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Mo 01.02.10 09:49 
user profile iconXcalibur hat folgendes geschrieben Zum zitierten Posting springen:
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.

user profile iconXcalibur hat folgendes geschrieben Zum zitierten Posting springen:
@ 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.

user profile iconXcalibur hat folgendes geschrieben Zum zitierten Posting springen:
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 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: 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
ene
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: Mo 01.02.10 11:19 
Normalerweise sollte dafür auch der Oracle Teiber reichen. Schau mal hier:

www.oracle.com/techn...ws/odpnet/index.html

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
Xcalibur Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: 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