这个“Multiple-step OLE DB”错误是什么?

3
我正在处理一款由印度班加罗尔最佳软件开发的可怕软件。
它主要使用经典ASP/VbScript编写,但已经“移植”到了ASP.NET,尽管大部分代码仍然是经典ASP风格的ASPX页面 :(
当它尝试连接我的本地数据库时,我收到了以下错误消息: 多步OLE DB操作生成错误。如果有可用的每个OLE DB状态值,请检查。没有完成任何工作。
Line 38:    MasterConn = New ADODB.Connection()
Line 39:    MasterConn.connectiontimeout = 10000
Line 40:        MasterConn.Open(strDB)

有人知道这个错误是什么意思吗?它使用以下连接字符串连接到我的本地机器(运行SQLEXPRESS):

PROVIDER=MSDASQL;DRIVER={SQL Server};Server=JONATHAN-PC\SQLEXPRESS\;DATABASE=NetTraining;Integrated Security=true

它最初使用的连接字符串是什么,我只是将其重新指向了我的数据库。

更新:

问题在于使用ADO时使用了"Integrated Security"。我改用用户帐户后,它成功连接了。

3个回答

4
我曾经在ASP中遇到过这个问题,很久以前。我找到了这篇知识库文章,它帮助了我。希望它能解决你的问题。 http://support.microsoft.com/kb/269495 如果这不起作用并且一切都检查过了,那么很可能是你的连接字符串有问题。接下来我建议你尝试以下步骤:
删除:
DRIVER={SQL Server};

将提供程序编辑为以下内容:
Provider=SQLOLEDB;

1
我遇到了一个连接字符串的错误,因此我不得不删除Integrated Security=false;。 - sawe

0

顺便提一下,connectionstrings.com 是一个很棒的网站,这样你就不必记住所有的连接字符串语法了。


0

当我尝试通过美妙的Classic ASP连接到MySQL数据库时,我遇到了这个问题。上面的解决方案没有直接解决它,但最后我通过更新ODBC驱动程序(从长期存在的3.51版本)到最新版本来解决了它。然后我能够保留驱动程序行(而不是添加Provider部分),但我确实需要相应地更新连接字符串为:

Driver={MySQL ODBC 5.1 Driver};

没问题,开心的程序员。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接