Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.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 将变量与每个子元素文本进行比较_Sql Server_Xml - Fatal编程技术网

Sql server 将变量与每个子元素文本进行比较

Sql server 将变量与每个子元素文本进行比较,sql-server,xml,Sql Server,Xml,我正在尝试循环浏览用户名列表,并根据传入的用户名授予权限。我将提供代码,并在最后问我的问题,我认为这将使它更容易 MY XML <QueueSelector> <DB></DB> <FillQuery></FillQuery> <TabText></TabText> <TooltipText></TooltipText> <Su

我正在尝试循环浏览用户名列表,并根据传入的用户名授予权限。我将提供代码,并在最后问我的问题,我认为这将使它更容易

    MY XML
    <QueueSelector>
    <DB></DB>
    <FillQuery></FillQuery>
    <TabText></TabText>
    <TooltipText></TooltipText>
    <Subscribers>
      <WorkSpace>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
        <Name></Name>
  </QueueSelector>
这将返回一个长字符串。问题是,如果用户名为asmith的人有权访问,那么用户名为asmith的人将有权访问

我想我的问题是什么是解决这个问题的最好方法。我熟悉做某事

    info.query('/Root/QueueSelector/Subscribers/WorkSpace/Name[1]/text())
但是,我不知道哪一个元素将包含persons用户名,如果它存在的话

我知道我问这个问题很可怕,任何我能澄清的都让我知道。

你可以使用和


我不太明白你的回答。我所说的存在是指用户名是否存在于名称元素中。如果用户名在其中一个name元素中,exist函数将返回1。
    info.query('/Root/QueueSelector/Subscribers/WorkSpace/Name[1]/text())
info.exist('/Root/QueueSelector/Subscribers/WorkSpace/Name[. = sql:variable("@UserID")]') = 1