【问题标题】:Moved SQLXMLBulkLoad program to production server, now getting invalid connection string error将 SQLXMLBulkLoad 程序移至生产服务器,现在出现无效的连接字符串错误
【发布时间】:2012-07-31 13:48:06
【问题描述】:

我要提前感谢任何对此提出意见的人。我开发了一个程序,它使用 SQLXMLBulkLoad4 类将 xml 文件批量加载到临时表,然后使用存储过程用这些数据更新生产表。这是我们不知所措的地方。在我的开发计算机上,一切都运行得非常好,但是,在移动所有必要的项目并将正确的 .dll 文件安装/注册到生产服务器之后,我在 SqlBulkLoad 错误日志中收到了一个致命错误。这是日志的文本(在 xml 中):

 <?xml version="1.0"?>
 <Result State="FAILED">
    <Error>
        <HResult>0x80040154I32</HResult>
        <Description><![CDATA[Invalid connection string.]]></Description>
        <Source>XML BulkLoad for SQL Server</Source>
        <Type>FATAL</Type>
    </Error>
</Result>

突然出现此错误时,我不明白。我尝试了不同的连接字符串类型,但无济于事。据我了解,使用 SqlXmlBulkLoad4 类调用 OLEDB 连接字符串。这是我的 SQLXMLBulkLoad 连接字符串示例:

<add key="ServerNameBulkLoad" value="Provider=SQLNCLI10;Server=ServerName;Database=DBName;Trusted_Connection=Yes;"/>

我也尝试过再次在服务器上手动注册sqloledb.dll。

有什么建议吗?

【问题讨论】:

  • TCP IP 协议已启用远程访问?
  • 是的。这是我们运行报告的主要产品服务器,有些甚至每小时运行一次。我不认为协议会成为问题,但我会检查一下。
  • 我刚刚验证了 TCP/IP 协议已启用远程可访问性。还有什么建议吗?

标签: sql-server vb.net connection-string sqlxml bulk-load


【解决方案1】:

好吧,在测试了一堆连接字符串之后(感谢www.connectionstrings.com),我终于找到了解决问题的方法,实际上是连接字符串。正确的连接字符串(用于生产服务器上的使用)与上面相同,除了 Provider=SQLOLEDB.1 而不是 SQLNCLI10。我相信这与程序正在运行的服务器有关,好吧,让我们说一下旧法规。总之,问题解决了。感谢 RGI 的帮助!

【讨论】:

    猜你喜欢
    • 2012-05-20
    • 2020-05-07
    • 2014-03-16
    • 2020-10-11
    • 1970-01-01
    • 2016-11-20
    • 2013-09-04
    • 1970-01-01
    • 2013-04-16
    相关资源
    最近更新 更多