0
我有一个XML如下所述,如何插入不同的XML字段值到表列
Declare @Message as xml
set @Message='<message>
<body>
<ID>1</ID>
<setup_time>10</setup_time>
<prod_cycle_time>10</prod_cycle_time>
<unit>cas</unit>
<Flag>NULL</Flag>
<FillingPO>NULL</FillingPO>
<PackAtCAN1>NULL</PackAtCAN1>
</body>
</message>'
我尝试使用下面的查询插入
INSERT into table(ID,Desc,Value)
SELECT p.value('ID[1]','INT'),
p.value('Desc[1]','NVARCHAR(50)'),
p.value('Value[1]','NVARCHAR(40)')
FROM @message.nodes('/message/Body/') x(p)
我想插入XML以上数据如下所述格式
ID Desc Value
1 setup_time 10
1 prod_cycle_time 10
1 unit Case
1 Flag NULL
1 FillingPO NULL
1 PackAtCAN1 NULL
但是我只能插入一条记录
上面的语句工作,如果标签是
标签上面。但是,如果如果' ID'在身体标签中,那么你只需要c在你正在寻找它的地方 - 例如'p.value('ID [1]','INT')' – GarethD 2014-10-31 11:39:49
上面的语句是以表格格式返回所有的xml标签和它的值。但是,如果我需要几个提交值的话,那么如何执行“setup_time,prod_cycle_time,unit”等字段以及它的值。 – user3237193 2014-10-31 13:16:16