2015-04-17 8 views
8

Ich schreibe ein VBScript, das eine Verbindung zu einer Sybase-Datenbank herstellt, einige Daten aus einer Tabelle liest und in Variablen speichert, stellt dann eine Verbindung zu einem MS SQL-Server und fügt Daten in Tabellen mit den variablen Daten, die zuvor gespeichert wurden.Fehler beim Herstellen einer Verbindung mit Sybase von VBScript - interner Client Bibliothek Fehler

Ich bin mir nicht sicher, ob dies relevante Informationen sind, aber da ich nur einen 32-Bit-Treiber für die Verbindung zu Sybase ODBC habe und dieses VBScript auf einem 64-Bit-Rechner läuft, führe ich es über die Kommandozeile aber mit dem SysWoW64 cmd.exe und läuft es dies mag:

C:\Windows\SysWOW64>cscript C:\My\Directory\MyVBScript.vbs 

ich habe Probleme mit der Sybase-Datenbank zu verbinden. Ich hatte ursprünglich einige Probleme mit der Verbindungszeichenfolge selbst, aber das scheint aussortiert worden zu sein. Hier

ist die Fehlermeldung, die ich jetzt bekommen, aber ich habe keine Ahnung, wie man Vergangenheit dieses:

Microsoft OLE DB Provider for ODBC Drivers: [SYBASE][ODBC Sybase driver][Sybase]ct_connect(): user api layer: internal Client Library error: HAFAILOVER:Trying to connect to server


Hier ist das Skript, wie es jetzt ist

Dim connStr, objConn 

DataSource = "ICCM_PREVIEW" 
ServerIP = "1.2.3.4" 
Port = "1234" 
DBuser = "myUser" 
DBpwd = "myPassword" 
DBName = "myDatabase" 
Driver = "SYBASE ASE ODBC Driver" 

connStr = "" 
connStr = connStr &"Driver="& Driver &";" 
connStr = connStr &"Data Source="& DataSource &";" 
connStr = connStr &"Srvr="& ServerIP &","& Port &";" 
connStr = connStr &"Database="& DBName &";" 
connStr = connStr &"uid="& DBuser &";" 
connStr = connStr &"pwd="& DBpwd &";" 

Wscript.Echo connStr 

'Define object type 
Set objConn = CreateObject("ADODB.Connection") 

'Open Connection 
objConn.open connStr 

Was fehlt mir hier?

+0

Haben Sie sich die Lösung hier angesehen: http://geekswithblogs.net/baskibv/archive/2008/01/18/118690.aspx? –

+0

Oder hier: http://www.tek-tips.com/viewthread.cfm?qid=1182044 –

Antwort

4

Der Parameter "Srvr" ist kein gültiger Verbindungsparameter und das Schlüssel/Wert-Paar "Port" ist erforderlich.

Vor

connStr = connStr &"Srvr="& ServerIP &","& Port &";" 

Nach

connStr = connStr &"Server="& ServerIP & ";" 
connStr = connStr &"Port="& Port &";" 

Auszug aus Microsoft's website

enter image description here

Mit Verbindungsparameter Diagramm

Following is a list of connection parameters other than from the DSN parameter that can be supplied to the ASE ODBC Driver

Auszug aus dem Benutzerhandbuch für Adaptive Server Enterprise ODBC Driver by Sybase

enter image description here enter image description here enter image description here enter image description here enter image description here

+0

@Robotsushi wie ist die empfohlene Modifikation funktioniert. – WorkSmarter

+0

Vielen Dank für Ihre Hilfe. Ich habe die von Ihnen vorgeschlagenen Änderungen vorgenommen und erhalte jetzt einen anderen Fehler. "Unzureichende Informationen zum Herstellen einer Verbindung mit der Datenquelle" – Armin

+0

Meine Verbindungszeichenfolge lautet wie folgt: Driver = SYBASE ASE ODBC-Treiber; Datenquelle = ICCM_PREVIEW; Server = 1.2.3.41234; Datenbank = myDatabase; UID = myUser; PWD = myPassword; " – Armin