Datenbankverbindung mit ORACLE erstellen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Arby.

    Datenbankverbindung mit ORACLE erstellen

    Hallo zusammen,

    leider schaffe ich es nicht, eine Datenbankverbindung mit ORACLE zu erstellen. Ich habe jetzt schon viel ausprobiert, aber ohne Erfolg.

    Wer kann mir eine Beispieldatei unter VB 2010 machen?

    Ich möchte gerne die Daten aus der tnsnames.ora übernehmen:

    TEST1 =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVICE_NAME = TEST1)
    )
    )

    Wäre super, wenn mir da jemand helfen könnte!

    Vielen lieben Dank!

    Euer Sascha
    Ahoi,

    also mit oracle kenne ich mich nicht ganz so gut aus aber für die Verbindung sollte dir das hier vielleicht erstmal weiterhelfen.
    Grüße Manu

    Was Gott dem Menschen erspart hat, kann der Computer.
    Billy ©, (*1932), Schweizer Aphoristiker
    Quelle: www.Aphorismen.de
    Im Grunde gibts ja drei Möglichkeiten für den Zugriff auf Oracle-Datenbanken unter .NET:

    1. Per ODBC-Treiber. Nicht zu empfehlen, weil die vorinstallierten (alten) Oracle-ODBC-Treiber mit den neueren Oracle-Datenbanksystemen meist nicht korrekt zusammenarbeiten. Abhilfe soll hier schaffen, aktuellere ODBC-Treiber für Oracle zu beschaffen und die mit auszuliefern.

    2. Per .NET Provider (System.Data.Oracle?), der allerdings nur im Framework 2.0 noch vollständig integriert war. Im Framework 4.0 gibts zwar auch noch eine Variante davon, aber damit hatte ich letztens einige Probleme gehabt. Es gab ständig Fehlermeldungen bzgl. falsche Version etc., denen ich nicht mehr weiter nachgegangen bin.

    3. Per OleDB-Verbindung unter Verwendung eines aktuellen Oracle-OleDB-Treibers (das würde ich bevorzugen).

    Die dritte Variante ist unter dem weiter oben genannten Link aber gar nicht aufgeführt und würde vermutlich mit einem ConnectionString, der einfach mit dem Inhalt der TnsNames.ora gefüttert wird, gar nicht zurechtkommen.

    Verwendung von OleDB:

    VB.NET-Quellcode

    1. Dim sConnString As String = String.Format("Provider=OraOLEDB.Oracle;Data Source={0};User ID=myUsername;Password=myPassword", serverName)
    2. Dim oOleDbConnection = New OleDb.OleDbConnection(sConnString)

    und vorher den Servernamen aus der Datei Tnsnames.ora mit Hilfe regulärer Ausdrücke oder String-Funktionen herausfiltern.
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.
    Hallo,
    erst mal danke für die Antworten...

    Leider bekomme ich immer eine Fehlermeldung..

    Quellcode

    1. Dim conn As New OracleConnection("Data Source=(DESCRIPTION=" & _
    2. "(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.10)(PORT=1521)))" & _
    3. "(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=tisch1)));" & _
    4. "User Id=test1;Password=test;")
    5. conn.Open()

    Dabei bekomme ich folgende Fehlermeldung:
    OCIEnvCreate ist mit dem Rückgabewert -1 fehlgeschlagen, ein Fehlermeldungstext war jedeoch nicht verfügbar.
    Imports System.Data.OracleClient
    hab ich über eine gefunde .dll - Datei eingebunden

    Wenn ich einen Verweis auf die .NET -> Oracle.DataAccess mache, wird der Import nicht akzeptiert..

    Kann mir hier jemand helfen?

    Hat jemand eine fertige Beispieldatei mit Select zum Testen?

    Vielen Dank

    Sascha

    sascha_10 schrieb:

    Imports System.Data.OracleClient
    hab ich über eine gefunde .dll - Datei eingebunden

    Wenn ich einen Verweis auf die .NET -> Oracle.DataAccess mache, wird der Import nicht akzeptiert..


    Klingt nach der Sache, die ich oben schon angeschnitten hatte:

    Arby schrieb:

    Im Framework 4.0 gibts zwar auch noch eine Variante davon, aber damit hatte ich letztens einige Probleme gehabt. Es gab ständig Fehlermeldungen bzgl. falsche Version etc., denen ich nicht mehr weiter nachgegangen bin.


    Welche Framework-Version hast du in deinem Projekt eingestellt und wo genau (Pfad) hast die die Oracle-DLL "gefunden"?

    Ggf. solltest du dem Link von @petaod: folgen und den dortigen .NET-Provider für Oracle herunterladen und benutzen.
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.