Veröffentlicht 21. Januar 200322 j Hi, habe von meinem Chef folgenden Code als Basis für eine Applikation (Zugriff auf SQL Server) bekommen: -------------------------------- Public Function sqlQuery(oUserName As String, _ oPassword As String, _ oDSN As String) Dim hsql As String Dim counter As Long Dim errCounter As Long 'Set wrkOracle = CreateWorkspace("ODBCWorkspace", oUserName, oPassword, dbUserODBC) Set wrkOracle = CreateWorkspace("ODBCWorkspace", oUserName, oPassword, dbUseODBC) Set dbsOracle = wrkOracle.OpenDatabase("", dbDriverNoPrompt, True, _ "ODBC;DATABASE =" & oDSN & " ; UID = " & oUserName & _ ";PWD=" & oPassword & ";DSN=" & oDSN) Set rstOracle = dbsOracle.OpenRecordset(hsql, dbOpenSnapshot) ------------------- Beim Setten der dbsOracle kommt die Meldung "ODBC-Aufruf fehlgeschlagen". Meine DB ist: ahd Mein Passwort = '' DB-Server = wbgw17a der DNS = ahd Was ist falsch? MfG Stefan
21. Januar 200322 j Originally posted by omarsantiago Meine DB ist: ahd Mein Passwort = '' DB-Server = wbgw17a der DNS = ahd Den Code hab ich mir jetzt nicht angetan. Der wird wohl passen, sonst hätte Dein Chef den Dir bestimmt nicht gegeben, oder? IMHO darf 1. DB Name und DNS nicht gleich sein. Ich nenne die DNS immer xxx_DNS, also in Deinem Fall ahd_DNS 2. Das Passwort nicht leer sein. " steht doch für leer, oder? Gruss Dietmar
21. Januar 200322 j Ist jetzt nur ein Schuss ins Blaue: Nimm mal die Leerzeichen aus dem Connect-String raus.
21. Januar 200322 j @Beagol&Sollum: Danke für den Tipp. Habe den DSN-Treiber also geändert--> hat nichts gebracht.... @Klotzkopp: Getan, kein Erfolg. Danke euch beiden für die Vorschläge. MfG Stefan
21. Januar 200322 j Originally posted by omarsantiago Habe den DSN-Treiber also geändert--> hat nichts gebracht.... Funktioniert denn der interne Test der ODBC-Verbindung? Könnte es sein, das dort schon der Connect nicht funktioniert? Gruss Dietmar
21. Januar 200322 j @Beagel: WElcher interne Test? Meinst du, ob überhaupt eine VBDG besteht? MFG Stefan
21. Januar 200322 j Ein wenig Off-Topic, scheint aber wohl hier ganz nützlich zu sein: Es gibt einen Trick, den Connection-String ziemlich einfach zu erstellen. Klar, wenn man da eine Klasse hat ist das auch easy, aber allein mit Win-Boardmitteln geht das auch prima: 1) Erstelle eine beliebige Datei (z.B. txt) 2) Bennene sie in "*.udl" um 3) Führe sie aus und gib die Einstellungen der Datenbank an 4) Bestätige mit OK 5) Bennene sie in "*.txt" um 6) Öffne sie mit einem Editor -> und du erhälst einen 1a Connection String
21. Januar 200322 j Originally posted by omarsantiago @Beagel: Beagol bin doch kein Hund! Originally posted by omarsantiago WElcher interne Test? Wenn Du eine ODBC Verbindung über Windows zur Datenbank herstellst (Verwaltung - Datenquellen[ODBC]), kannst du diese Connection dirket testen. Wenn das schon fehlschlägt, kannst du das Problem besser eingrenzen.
21. Januar 200322 j Originally posted by developer 1) Erstelle eine beliebige Datei (z.B. txt) 2) Bennene sie in "*.udl" um 3) Führe sie aus und gib die Einstellungen der Datenbank an 4) Bestätige mit OK 5) Bennene sie in "*.txt" um 6) Öffne sie mit einem Editor -> und du erhälst einen 1a Connection String OK, danke. Aber das wäre dann ein OLEDB Connection String. Ich brauche aber für den Zugriff auf den SQL-Server (bzw. die Verwertung der Daten dort) ODBC. Mfg Stefan
21. Januar 200322 j Hi, passt jetzt, der ConnectionString hatte (komischerweise) 2 x verschiedene Werte, d.h. einmal wurde der DBName eingetragen, das andere mal der Nutzername und vice versa. Danke allen Für die Hile! mFg Stefan
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.