选择@ xml.nodes ...如何分配列?

时间:2015-05-05 16:49:42

标签: sql xml

我想把我的xml.node sql的结果放到表中并遇到像缺少列名这样的小问题,任何人都可以推荐我。 这会将单个文件xml分解为节点,每行一个节点。 下面的示例工作正常,但我需要以某种方式激活注释行:

--CREATE TABLE  TSxml  (TSNum INT IDENTITY (1,1),  xmlinfo XML)
--SELECT * FROM TSxml
declare @xml XML = (select c1 from t3)
--INSERT INTO TSxml 
--SELECT * FROM (
  SELECT T.N.query('.')
   FROM @xml.nodes('/testsuite') as T(N)
--) AS C1

1 个答案:

答案 0 :(得分:1)

我相信您在SELECT语句中缺少列别名。试试这个:

CREATE TABLE  TSxml  (TSNum INT IDENTITY (1,1),  xmlinfo XML)
SELECT * FROM TSxml
declare @xml XML = (select c1 from t3)
INSERT INTO TSxml 
SELECT * FROM (
  SELECT T.N.query('.') x
   FROM @xml.nodes('/testsuite') as T(N)
) AS C1