テスト テーブルとデータ
テーブルを作成 tableABC(A int, B bit, C varchar(10))insert into tableABC values(1, 1, 'Row 1')insert into tableABC values(2, 0, 'Row 1') コード> プレ>
XML を取得
declare @xml xmlset @xml =(select * from tableABC for xml auto, elements)
プレ>
XML データ
1 1 行 1 2 0 行 1
プレ>
別のテーブルABCに挿入
insert into tableABC(A, B, C)select r.value('A[1]', 'int'), r.value('B[1]', 'bit'), r .value('C[1]', 'varchar(10)')from @xml.nodes('tableABC') t(r)
プレ>
編集 このステートメント全体をコピーして、機能するかどうかをテストしてください
use tempdbgocreate table tableABC(A int, B bit, C varchar(10))goinsert into tableABC values(1, 1, 'Row 1')insert into tableABC values(2, 0, 'Row 1' )declare @xml xmlset @xml =(select * from tableABC for xml auto, elements)insert into tableABC(A, B, C)select r.value('A[1]', 'int'), r.value( 'B[1]', 'bit'), r.value('C[1]', 'varchar(10)')from @xml.nodes('tableABC') t(r)select *from tableABCgodrop table tableABC コード> プレ>
結果は tableABC の重複した行です
A B C----------- ----- ----------1 1 行 12 0 行 11 1 行 12 0 行 1
プレ>