将SQLXMLBulkLoad程序移动到生产服务器,现在获取无效的连接字符串错误

时间:2012-07-31 13:48:06

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

我要感谢任何提前对此提出意见的人。我开发了一个程序,它使用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。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

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