0

我正在处理具有大量 XSD 文件的 XML 数据。要将这些数据加载到数据库(我需要从 XSD 创建表),我不能使用 xsd2DB(因为 XSD 包含联合和列表),也不能使用 SSID 项目。所以我尝试了批量加载,但出现错误:Schema: multiple base for a derived type on nilReason is not supported (HResult>0x80004005)

谁能帮我解决这个问题?

非常感谢!

下面是我的 C# 代码和 XSD 的 URL http://www.cuzk.cz/GenerujSoubor.ashx?NAZEV=10-AXSD(由捷克办事处分发,用于测量、制图和地籍);zip 中的主要 XSD 文件位于路径:*...\ruian\xsd\vymenny_format*

   SQLXMLBulkLoad4Class objBL = new SQLXMLBulkLoad4Class();
         objBL.ConnectionString = "Provider=sqloledb;server=mypc\\SQLSer; database=test;integrated security=SSPI";


   objBL.BulkLoad = true;
   objBL.SchemaGen = true;
   objBL.SGUseID = true;
   objBL.CheckConstraints = true;
   objBL.ForceTableLock = true;
   objBL.KeepIdentity = false;
   objBL.ErrorLogFile = filePath + "\\Project_Errors\\error.txt";
   objBL.Execute(@"D:\data\ruian\xsd\vymenny_format\test.xsd", @"D:\data\ruian\xsd\vymenny_format\test_data.xml");
   objBL.Execute(@"D:\data_RUIAN\ruian\xsd\vymenny_format\VymennyFormatTypy.xsd", @"D:\data_RUIAN\data\20130430_OB_500071_UKSH.xml");
4

1 回答 1

0

并非所有可能的 XSD 都可以在数据库模式中自动转换 - 恐怕您就是其中一种情况。

您必须手动创建数据库表并将 XML 映射到它们。

于 2013-05-29T21:38:29.567 回答