2012-04-09 63 views
2

我需要將大量xml文件批量加載到SQL Server 2005.我決定在我的C#應用​​程序中使用SQLXMLBULKLOAD,但我需要獲得這些xml的有效xsd-schemas文件加載它們。哪種是生成xsd文件的最佳方式? 我試過MS VS xsd.exe,但它試圖將文件加載到內存中,這會導致OutOfMemory異常。獲取大型(1 GB)xml文件的有效架構

謝謝!

回答

0

剝下文件以創建一個代表整體的較小文件,然後從中生成一個XSD。如有必要,您可以調整結果。

+0

好的,謝謝你的回答。我想這個。你能告訴我哪個工具對我來說很適合生成XSD嗎? – 2012-04-10 05:12:39

+0

SQL Server Management Studio 2008可以確定爲給定的XML文檔生成模式。但我不知道2005年。 – 2012-04-10 08:31:47

+0

我寧願將架構生成集成到我的C#程序中。將XML文件的一部分用於模式生成的想法很好,但還有另一個問題 - 如何爲SQLXMLBulkLoad生成**有效的** XML模式? – 2012-04-10 08:56:08

0

有很多工具可以從實例中生成模式,但我不知道它們中有多少能夠以純流模式運行。無論文件大小如何,一種工具都可以工作,它最初是撒克遜一部分的DTDGenerator;你可以在這裏找到:

http://saxon.sourceforge.net/dtdgen.html

它產生一個DTD,而不是一個模式,但也有很多可用的DTD轉換爲架構的工具。

+0

它需要Java機器,所以我無法將這個工具與我的應用程序一起使用。不管怎樣,謝謝你! – 2012-04-10 04:14:37

+0

如果這是一個約束,使用IKVMC很容易將其轉換爲.NET應用程序。 – 2012-04-11 13:21:57