如何将巨大(但简单)的分层XML文件加载到SQL表中

时间:2009-05-15 13:23:46

标签: .net sql sql-server xml sql-server-2008

我有一个非常大的(2.5GB,55百万节点)XML文件,格式如下:

<TopNode>
    <Item id = "Something">
         <Link>A link</Link>
         <Link>Another link</Link>
         <Link>One More Link</Link>
    </Item>
    <Item id = "Something else">
         <Link>Some link</Link>
         <Link>You get the idea</Link>
    </Item>
  </TopNode>

我想将其压缩到以下SQL表中:

 -----------------------------------------
 |  Item          |          Link        |
 -----------------------------------------
 | Something      |  A link              |
 | Something      |  Another link        |
 | Something      |  One More Link       |
 | Something Else |  Some Link           |
 | Something Else |  You get the idea    |
 |----------------|----------------------|

我正在使用SQL2008,如果这有所不同。

最简单,最有效的方法(最好使用SQL Server / .NET堆栈)从A点到B点是什么,请记住所涉及文件的大小?

2 个答案:

答案 0 :(得分:6)

我会使用XML Bulk Load。这是一个很好的方法,因为它不会立即读取整个文档,而是流式传输。它也非常快,并且符合您坚持使用基于SQL Server的工具的要求。

答案 1 :(得分:0)

看看Oslo / M.