Das Clever-Excel-Forum.de - Treffen
... 14.-16. September 2018 im Allgäu ...

ODBC ConnectionString gesucht
#1
Hallo zusammen,Angel

leider hat sich in dem anderen Forum niemand finden können der mir weiterhelfen kann. Ich stelle nie die gleichen Fragen in verschiedenen Foren, hoffe ihr entschuldigt dies als Ausnahme...



ich möchte über ODBC auf eine OracleDB zugreifen, kenne aber den Connection String nicht.

Mit

Code:
sAdoConnectString = "Driver={Microsoft ODBC for Oracle};Server=Rambo;Uid=HIMMEL;Pwd=hoelle;"

bekomme ich folgende Fehlermeldung:
Zitat:Die Client- und die Netzwerkverbindung von Oracle™ wurden nicht
gefunden.Die Komponenten |werden von der Oracle Corporation geliefert
und mit der Clientsoftware von Oracle Vers. 7.3 oder höher
Installiert.

Dann kommt noch


Zitat:[Microsoft][ODBC Driver Manager] Fehler beim SQLAllocHandle-Aufruf für Treiber auf SQL_HANDLE_ENV

Im Excel Über

Zitat:Menü/Daten/Aus anderen Quellen/von MicrosoftQuery.

funzt es. Dann kommen aber die Daten als Tabellenblatt raus
Ich bin auch nicht sicher, ob ich noch einen Treiber benötige.

LG Klaus
to top
#2
Hola,

leider hat sich in dem anderen Forum niemand finden können der mir weiterhelfen kann.

der letzte Beitrag ist ja auch erst knapp 4 Stunden her. In den Foren geschieht alles freiwillig und kostenlos, da darf schon mal gewartet werden....

Gruß,
steve1da
to top
#3
Hallo Steve1da, du hast ja recht.

Ich bin am verzweifeln22, weil ich gar nicht mehr weiterkomme.

Ich habe die ganze Zeit über versucht mich über connectionstrings und dem Tutorial von Haserodt einzulesen.

Mit dem Ergebnis, dass ich die Procedur aus dem Tutorial übernommen habe, aber immer noch nihct weiss ob mir ein Treiber fehlt.

Früher war ich bei Office-Lösung. Ich finde es so traurig, dass es nicht mehr weitergeht. Die Antworten hatten ein sehr hohes niveau.
Ich habe gelesen, dass viele Moderatoren (z.B. Peter) hieher gewechselt sind. Deshalb habe ich mich heute auch hier angemeldet. Ich meine auch deinen Benutzernamen im Office-Lösung gesehen zu haben100

Gerade bei Spezialfragen war Office Lösung meine erste Wahl.

Und jetzt hoffe ich, dass ich hier genauso qualifiziert weitergeholfen bekomme. Smile

LG Klaus
to top
#4
Hola,

was mit OfficeLoesung passiert ist, ist sehr traurig. Und ja, ich war auch dort also Mod aktiv. Aktuell gibt es ein provisorisches Forum:

http://www.office-loesung.de/p

in dem du es auch versuchen könntest.

Ob OL jemals in seiner gewohnten Form wiederkommt, liegt leider in wenigen Händen.

Gruß,
steve1da
to top
#5
Hallo,

Zitat:Ich finde es so traurig, dass es nicht mehr weitergeht

Sagt wer? Das Forum ist online und wird immer noch gut frequentiert.

Zitat:Ich habe gelesen, dass viele Moderatoren (z.B. Peter) hieher gewechselt sind.

Das hierher gewechselt hört sich so an, als ob ich dort drüben nicht mehr tätig bin - dem ist nicht so. Wenn du in den einzelnen Excel-Foren die es gibt reinschaust, dann wirst du feststellen, dass gerade die Antwortenden sehr oft in mehreren Foren ihr Helfersyndrom ausleben. Manche, wie ich oder steve1da oder..., mit dem gleichen Benutzernamen, andere aber auch mit unterschiedlichen Benutzernamen.

Dein Problem
Zitat:ich möchte über ODBC auf eine OracleDB zugreifen, kenne aber den Connection String nicht.
ist aber nicht unbedingt ein alltägliches Problem bei dem die Helfer Schlange stehen würden, ich z.B. stehe bei dieser Fragestellung wie der Ochs vor dem Berg.

Hilft dir jetzt nicht viel, ist aber leider so, und hat nichts mit der Qualität von Foren zu tun.
Gruß
Peter
to top
#6
Hallo Peter,

mit

Zitat:Zitat:Ich finde es so traurig, dass es nicht mehr weitergeht

Sagt wer? Das Forum ist online und wird immer noch gut frequentiert.
Damit habe ich das Original Office-Lösung gemeint und nicht das Provisorium.

Die Kommentare in dem Beitrag Knapp 650...... haben bei mir den Eindruck erweckt, dass das Forum aufgegeben werden soll und die Moderatoren auf andere Foren ausweichen.
Falls ich da was falsch verstanden habe, tut es mir leid. Ich würde mich riesig freuen, wenn es irgendwann mit dem Original Office-Lösung weitergehen würde.

Auf jeden Fall möchte ich jetzt mal die Gelegenheit wahrnehmen und mich bei dir (die anderen Moderatoren und Helferselbstverständlich eingeschlossen) für deine Hilfe und die hilfreichen Beiträge hiermit zu bedanken.

Dass meine Fragestellung diesmal so außergewöhnlich ist, dass selbst ein erfahrener Moderator auf anhieb nicht weiterhelfen kann, wusste ich nicht.
Zitat:Ich weiss, dass ich nichts weiss.
- aber ich hoffe jemand anderes weiss was.

In diesem Sinne würde ich mich freuen, wenn du mir nichts nachträgst und hoffe, dass es doch noch jemanden gibt der mir bei meinem Problem weiterhelfen kann.

LG

Klaus
to top
#7
Hallo,

der von dir zitierte Thread umfasst 4 Seiten - während der Anfang nicht viel Gutes vermuten lässt wird es zum Ende hin besser, das Forum existiert weiterhin und ich bin sowohl drüben als auch hier zu finden, d.h. ich helfe, soweit es mir möglich ist, sowohl hier als auch anderswo.

So und damit lasse ich es gut sein. Wir können uns gerne drüben über OL unterhalten, aber hier im Clever-Excel-Forum ist dafür m.E. nicht der richtige Ort.

Zitat:wenn du mir nichts nachträgst

Warum sollte ich dir etwas nachtragen? Es gibt nichts in diesem Thread was dazu Anlass geben würde.
Gruß
Peter
to top
#8
Hallo Klaus,

versuch es doch mal über die Registerkarte Daten / Aus anderen Quellen / von Microsoft Query

ob du da auf die Oracle-Datenbank kommst. !? Wenn nicht, fehlen Treiber.

Dann könntest du diese Query Abfrage aufzeichnen und hättest dann den Connection String.

LG Margit
to top
#9
Hallo Klaus,

ich habe hier mal ein allgemeines "Eröffnungsmakro". Ein paar Einstallungen kommen über den ODBC-Treiber und über eine TNS. Wir verwenden inzwischen oo4o statt odbc.

Code:
Function DBOpen() As Integer
'Öffnet die DB-Verbindung zu Oracle über den Standart-ODBC-Dialog
Dim conn_string As String
Dim conn_feld As String
  On Error Resume Next
  
  Me.db_user = ""
  Me.db_passwd = ""

  conn_string = "ODBC;DSN=" + Me.db_name + _
          ";UID=" + Me.db_user + _
          ";PWD=" + Me.db_passwd
  Set Me.wrkspace = DAO.DBEngine.CreateWorkspace(Me.db_name, _
                        Me.db_user, _
                        Me.db_passwd, _
                        dbUseODBC)
  Set Me.dbase = Me.wrkspace.OpenDatabase(Me.db_name, _
                        dbDriverCompleteRequired, _
                        False, _
                        conn_string)
  If Me.dbase Is Nothing Then
    '--- Datenbank wurde nicht geöffnet
    Me.err_code = Konst.ERR_DB_
    Me.initialisiert = False
    Vars.lf.LFDebugInfo "Fehler:" + Chr(9) _
              + "Öffnen der DB-Verbindung nicht erfolgreich!"
  Else
    '--- Datenbank geöffnet
    Me.dbase.QueryTimeout = 90 '--- anderthalb Minuten Warten
    '--- den Connectionstring analysieren und die Eintäge DSN,UID und PWD holen
    conn_string = Me.dbase.Connect
    conn_feld = StrGetItem(conn_string, ";")
    While conn_feld <> ""
      '--- solange noch ein Eintrag im Connection String ist
      If left(conn_feld, Len("DSN=")) = "DSN=" Then
        Me.db_name = Mid(conn_feld, Len("DSN=") + 1, Len(conn_feld))
      End If
      If left(conn_feld, Len("UID=")) = "UID=" Then
        Me.db_user = Mid(conn_feld, Len("UID=") + 1, Len(conn_feld))
      End If
      If left(conn_feld, Len("PWD=")) = "PWD=" Then
        Me.db_passwd = Mid(conn_feld, Len("PWD=") + 1, Len(conn_feld))
      End If
      conn_feld = StrGetNextItem(conn_string, ";")
    Wend
    Me.err_code = Konst.ERR_OK_
    Me.initialisiert = True
    Vars.lf.LFDebugInfo "Info:" + Chr(9) + _
              "DB-Verbindung geöffnet: " + Me.dbase.name + " / " + conn_string
  End If
  DBOpen = Me.err_code
End Function
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#10
Hallo zusammen,

ersteinmal vielen Dank euch beiden.28

Inzwischen konnte ich den Connection String in der spora.chm finden.

Er lautet
Code:
sAdoConnectString = "Driver={Oracle ODBC Driver};DSN=Rambo;Uid=HIMMEL;Pwd=hoelle;"

@Magit Deine Idee war gut, hatte hier auch bereits nachgeschaut. Leider steht dort nur der 2. Teil des Strings DSN=Rambo;Uid=HIMMEL;Pwd=hoelle Die Treiberinfo habe ich in der *.dqy nicht finden können.

@ Deinen String werde ich gelegentlich mal nachvollziehen um die unterschiede herauszufinden. Dein Code finde ich sehr interesant weil ich in meinem Makro mit CreateObject("ADODB.CONNECTION") arbeite.

Also nochmals herzlichen Dank an alle für die Hilfe

LG Klaus
to top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste