我有大的 XML 文件,最大 4 到 5 GB。
我设法阅读它,XmlReader
但现在想将值添加到数据库中
我使用简单的插入查询将值添加到数据库并卡住了,将值插入数据库需要 2 个多小时才能获得 2 GB 文件。是否有其他方法可以更有效地将 XML 文件中的值添加到数据库中?
XML 文件具有要添加到数据库中的新属性及其值。
我正在使用 SQL Server 2008 和 .NET。
谢谢..
我有大的 XML 文件,最大 4 到 5 GB。
我设法阅读它,XmlReader
但现在想将值添加到数据库中
我使用简单的插入查询将值添加到数据库并卡住了,将值插入数据库需要 2 个多小时才能获得 2 GB 文件。是否有其他方法可以更有效地将 XML 文件中的值添加到数据库中?
XML 文件具有要添加到数据库中的新属性及其值。
我正在使用 SQL Server 2008 和 .NET。
谢谢..
bcp 通常是最快的方法...
这听起来像是“批处理”式操作。考虑采取不同的方法:
请参阅此 MSDN 主题。
这种方法几乎肯定会比遍历 XML 并一次插入一行具有更高的性能。
您可以互操作 XmlBulkLoad。可能这可以帮助你吗?
如果您直接从 SQL Server 读取 XML 文件,您将获得更快的响应。
它是一个 3 步过程,简化如下:
1) 声明@doc xml = '你的xml here' 声明@handler int
2) 执行 sp_xml_preparedocument @handler OUTPUT, @doc
3) select * from OPENXML(@handler, '/ROOT/Path/To/Data')