从 VBScript 连接到 Sybase 时出错 - 内部客户端库错误

Error when connecting to Sybase from VBScript - internal Client Library error

我正在编写连接到 Sybase 数据库的 VBScript,从 table 读取一些数据并将其存储在变量中,然后连接到 MS SQL 服务器并将数据插入 tables 与之前存储的变量数据。

我不确定这是否是相关信息,但由于我只有一个用于连接到 Sybase ODBC 的 32 位驱动程序,并且由于此 VBScript 在 64 位计算机上 运行,所以我运行 通过命令行但使用 SysWoW64 cmd.exe 和 运行 它像这样:

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

我无法连接到 Sybase 数据库。我最初对连接字符串本身有一些问题,但似乎已经解决了。

这是我现在收到的错误消息,但我不知道如何解决这个问题:

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


这是现在的脚本

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

我在这里错过了什么?

参数 "Srvr" 不是有效的连接参数,需要 "Port" 键值对。

之前

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

之后

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

摘自Microsoft's website

使用连接参数图表

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

摘自 Adaptive Server Enterprise ODBC Driver by Sybase

的用户指南