私はSQL Serverを初めて使用しており、XML文書からデータベースに行を挿入しようとしています。いくつかの調査を行い、XMLノード関数を使用してXMLを行セットに入れることができました。しかし、私は次に何をすべきか分かりません。この列セットを同じ列名を持つ既存のテーブルに挿入するにはどうすればよいですか?xml.nodes()の出力をテーブルに挿入するにはどうすればよいですか?
これまで私がこれまで持っていたことは、誰かが次に行く場所を助けることができますか?
DECLARE @xml xml
SET @xml =
N' <Products>
<Product>
<id>4</id>
<name>Amy</name>
<age>25</age>
</Product>
<Product>
<id>7</id>
<name>Vicky</name>
<age>40</age>
</Product>
</Products>'
SELECT doc.col.value('id[1]', 'nvarchar(10)') id
, doc.col.value('name[1]', 'varchar(100)') name
, doc.col.value('age[1]', 'nvarchar(10)') age
FROM @xml.nodes('/Products/Product') doc(col)
は思っていましたか?基本的には、各ノードを行の対応する各フィールドに挿入するだけの場合は、多くのフィールドと多くのノードが一致するケースがあります。すべてのノード名とすべてのフィールド名は同じになります。 – LeeTee
また、フィールドタイプを指定する必要がありますか?それは単にデータベースに入ることはできません... – LeeTee