Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以在sql server中一次只解析xml中的一个节点吗?_Sql_Xml_Parsing_Nodes - Fatal编程技术网

我可以在sql server中一次只解析xml中的一个节点吗?

我可以在sql server中一次只解析xml中的一个节点吗?,sql,xml,parsing,nodes,Sql,Xml,Parsing,Nodes,如果我有以下xml: <Main> <Group> <Insert /> </Group> <Group> <Insert /> </Group> ... </Main> ... 我知道如果我使用openxml(@xml,'Main/Group/Insert',1),我将解析所有 是否有一种方法可以只读取一个组节点,解析其插入节点,然后读取下一个组节点并解

如果我有以下xml:

<Main>
  <Group>
    <Insert />
  </Group>

  <Group>
    <Insert />
  </Group>

  ...
</Main>

...
我知道如果我使用
openxml(@xml,'Main/Group/Insert',1)
,我将解析所有


是否有一种方法可以只读取一个组节点,解析其插入节点,然后读取下一个组节点并解析其插入节点?

OpenXML或更新的XML数据类型和XPath将XML视为一个表,一次提取并将结果视为多行

您所问的问题相当于,对于一个普通的SQL Server表,是否可以选择一条记录,然后读取下一条记录?当然,比如使用游标或WHILE循环,但是为什么呢


考虑一下你想用它做什么,你很快就会把它当作一个数据集来处理,把解析的结果当作记录来处理,并把设置逻辑应用到你从中检索到的值上。

(包括一个实际的XML片段?)我想做的是,我想让一个过程解析整个XML,只读取一个组节点,把这个节点(作为它的原始XML格式——你可以把它看作一个更小的XML文件)传递给另一个过程B。然后把XML格式的第二个组节点传递给B.。