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