如何从SQLServer存储过程中的xml节点创建游标?
我将XML文档作为参数传递给存储过程。然后,我尝试填充一个游标,以便循环遍历XML的元素。我的问题是如何选择这个XML文档的每个元素并用它们填充光标 XML文档如何从SQLServer存储过程中的xml节点创建游标?,sql,sql-server,xml,tsql,stored-procedures,Sql,Sql Server,Xml,Tsql,Stored Procedures,我将XML文档作为参数传递给存储过程。然后,我尝试填充一个游标,以便循环遍历XML的元素。我的问题是如何选择这个XML文档的每个元素并用它们填充光标 XML文档 <Authors> <Author_id>1</Author_id> <Author_id>2</Author_id> </Authors> 您可以使用和: DECLARE@authors XML= “ 工作原理: 声明作者\u光标 选择n.c.v
<Authors>
<Author_id>1</Author_id>
<Author_id>2</Author_id>
</Authors>
您可以使用和:
DECLARE@authors XML=
“
工作原理:
声明作者\u光标
选择n.c.value('.',INT')作为作者id
来自@authors.nodes('/authors/Author_id')的n(c);
@authors.nodes('/authors/Author_id')
根据XQuery
和派生表的别名获取节点,分别为n
和c
-列
使用n.c.value('.','INT')作为作者id来获取元素的实际值
@VR46谢谢:)我也在准备,看起来很棒。你能解释一下n.c.value和n(c)中的n.c是什么意思吗?@JimVer添加了解释,只需使用xml方法,添加别名,从节点获取值