什么是"多步OLE DB"错误?

时间:2020-03-05 18:42:31  来源:igfitidea点击:

我正在做一些最好的由Bangalores开发的可怕软件。

它大多数都是用经典的ASP / VbScript编写的,但是"移植"到了ASP.NET,尽管大多数代码都是ASPX页面中的经典ASP样式:(

当它尝试连接到我的本地数据库时,我收到此消息:

多步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中使用"集成安全性"。我改为使用用户帐户,并且连接正常。

解决方案

回答

很久以前,我在ASP中工作时遇到了这个问题。我找到了这篇知识库文章,它对我有帮助。我希望它能解决问题。

http://support.microsoft.com/kb/269495

如果这不起作用并且所有内容都已签出,则可能是连接字符串。接下来,我将尝试这些步骤:

消除:

DRIVER={SQL Server};

编辑提供者为此:

Provider=SQLOLEDB;

回答

附带说明一下,connectionstrings.com是一个不错的网站,因此我们不必记住所有的连接字符串语法。

回答

当试图通过精美的Classic ASP连接到MySQL数据库时,我遇到了这个问题。上面的解决方案不能直接修复它,但是最终我通过将ODBC驱动程序(从长期存在的3.51)更新到最新版本来解决了该问题。然后,我可以将驱动程序行保留在其中(而不添加提供者位),但是我确实必须相应地将连接字符串更新为:

Driver={MySQL ODBC 5.1 Driver};

很好。快乐快乐。