0

我正在寻找一个超过 80GB 的 xml 文件(并将结果插入到预先存在的数据库中)。这使我无法简单地将其声明为 xml 变量并使用 openrowset。我不打算使用 CLR,如果可能的话,我更喜欢完全 TSQL 方法(希望在 SQL Server 2012/Windows Server 2008 上执行此操作)

由于 XML 数据类型的 2Gb 限制,我意识到显而易见的方法是将文件拆分为 1GB 的片段。然而,这太混乱了,不值得(文档中的元素大小不一,并非所有元素都具有相同的子元素。不过,只希望保留一些公共元素)。

有人有建议吗?

4

2 回答 2

0

With a simple schema (sorry, should have mentioned it) bulk cmds would probably have been the way to go. With something more messy, and given the size of the file, a SAX parser seems to provide a better solution. Reads the file without putting it into memory, I can pick out only the elements I want and not have to worry about the schema at all.

于 2013-08-31T21:45:53.713 回答
0

如果它是一次性的,我会使用 SQL 导入/导出工具。如果需要安排一些事情,请创建一个集成服务包。

于 2013-08-31T04:11:32.040 回答