AutoIT:ADODB.Connection方法'打开'失踪?

时间:2017-08-10 16:00:30

标签: autoit adodb

我想使用AutoIT通过ADODB对象访问Maria DB。 ADODB.Connection对象的创建似乎正常工作。但由于某些原因我找不到,open方法失败了。我不是AutoIT专家,但对我来说,看起来这个对象没有问题。

代码的相关行是:

$objConn = ObjCreate("ADODB.Connection")
ConsoleWrite("ADODB conn Error: " & @error & " - Typ: " & VarGetType($objConn) & @crlf)
$objConn.open ("DRIVER=" & $sDriver & ";SERVER=" & $sServer & ";DATABASE=" & $sDatabase & ";UID=" & $sUsername & ";PWD=" & $sPassword)
ConsoleWrite("conn Error: " & @error & @crlf)

未到达第二个ConsoleWrite。输出和错误消息是:

ADODB conn Error: 0 - Typ: Object
"C:\Users\mischneider\Documents\Automation_Base\udf\mysql.au3" (29) : ==> The requested action with this object has failed.: 
$objConn.open ("DRIVER=" & $sDriver & ";SERVER=" & $sServer & ";DATABASE=" &
$sDatabase & ";UID=" & $sUsername & ";PWD=" & $sPassword) $objConn^ ERROR

任何人都能说出我做错了什么以及如何打开连接?

非常感谢, 迈克尔

1 个答案:

答案 0 :(得分:0)

我找到原因并且可以解决问题。 我的自定义函数使用$ sDriver以下(错误的)默认值:

[...]$sDriver = "(MySQL ODBC 3.51 Driver)", [...]

使用括号()而不是大括号{}。正确的是:

[...]$sDriver = "{MySQL ODBC 3.51 Driver}", [...]

笔记本电脑屏幕太小我没意识到。但是插入一个有效的连接字符串,然后将它与char的连接字符的结果进行比较,我认识到了这一点。

我希望现在记录下来的事故会在我的情况下帮助其他人。

BR 迈克尔