我们有一个真正令人困惑的问题。我们正在尝试使用我们编写的一个小应用程序测试SQL 批量加载,该应用程序传入数据文件 XML、模式和 SQL 数据库连接字符串。
这是一个非常简单的应用程序,这是代码的主要部分:
SQLXMLBULKLOADLib.SQLXMLBulkLoad4Class objBL = new SQLXMLBULKLOADLib.SQLXMLBulkLoad4Class();
objBL.ConnectionString = "provider=sqloledb;Data Source=SERVER\\SERVER; Database=Main;User Id=Username;Password=password;";
objBL.BulkLoad = true;
objBL.CheckConstraints = true;
objBL.ErrorLogFile = "error.xml";
objBL.KeepIdentity = false;
objBL.Execute("schema.xml", "data.xml");
如您所见,这非常简单,但是我们从将这些内容传递给的库中收到以下错误:Interop.SQLXMLBULKLOADLib.dll。
消息内容如下:
Failure: Attempted to read or write protected memory. This is often an indication that other memory has been corrupted
我们不知道是什么原因造成的,甚至不知道它意味着什么。
在此之前,我们首先遇到了一个错误,因为没有安装 SQLXML4.0,因此很容易修复。然后出现错误,因为它无法连接到数据库(错误的连接字符串) - 已修复。现在有这个,我们只是感到困惑。
谢谢你的帮助。我们真是摸不着头脑!