我找到了解析xml插入的例子。然而這些例子非常簡單。 他們通常只是這樣的:如何將複雜的XML解析爲SQL服務器中的多個插入和更新?
<person>
<name>Martin</name>
</person>
<person>
<name>John</name>
</person>
但我有類似這樣的XML - 如果我需要插入到其他表的子元素。
<root>
<family>
<name>Smith</name>
<address>Some road 1</address>
<persons>
<person>
<name>Tina</name>
<hobbies>
<hobby>Some hobby 1</hobby>
<hobby>Some hobby 2</hobby>
</hobbies>
</person>
<person>
<name>Martin</name>
<hobbies>
<hobby>Some hobby 1</hobby>
<hobby>Some hobby 2</hobby>
</hobbies>
</person>
</persons>
</family>
<family>
<name>Lane</name>
<address>Some road 1</address>
<persons>
<person>
<name>Kevin</name>
<hobbies>
<hobby>Some hobby 1</hobby>
<hobby>Some hobby 2</hobby>
</hobbies>
</person>
<person>
<name>Julia</name>
<hobbies>
<hobby>Some hobby 1</hobby>
<hobby>Some hobby 2</hobby>
</hobbies>
</person>
</persons>
</family>
</root>
我需要通過這個XML迭代和第一行插入表「家」 後,我返回ID爲家庭和在表中使用它作爲下一個INSERT外鍵一個人「人」與愛好相同。我想你應該已經明白了。在「家庭」之後,我需要做一些更新陳述,然後再轉到下一個家庭。
難道有人指着我正確的方向嗎?將不勝感激。
哪些服務器端語言是您使用..? – alwaysLearn 2013-04-09 07:35:50
坦率地說,你已經完成了作業所期望的功課並不清楚。 Google很容易找到這個頁面,顯示從xml文件中選擇兩個相關的表格:http://www.mssqltips.com/sqlservertip/2899/importing-and-processing-data-from-xml-files-into-sql-server -tables /。看來你必須做多次傳球。 – koriander 2013-04-09 08:04:54
如果您使用的是SQL Server 2008或更高版本,則可以使用[本答案]中的技術(http://stackoverflow.com/a/12853080/569436) – 2013-04-09 08:08:42