Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/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
T-sql选择xml值_Sql_Xquery Sql - Fatal编程技术网

T-sql选择xml值

T-sql选择xml值,sql,xquery-sql,Sql,Xquery Sql,您必须在Xquery中使用名称空间 select ref.col.value('.','varchar(255)') from my_View tbl cross apply tbl.XMLColumn.nodes('Envelope/Header/Teste/Firma') as ref(col) create table so_Test(XMLColumn xml) 去 插入so_检验 选择' 布拉布拉 ' 选择XMLColumn.value(' 声明命名空间soap=”http://sc

您必须在Xquery中使用名称空间

select ref.col.value('.','varchar(255)')
from my_View tbl
cross apply tbl.XMLColumn.nodes('Envelope/Header/Teste/Firma') as ref(col)
create table so_Test(XMLColumn xml)
去
插入so_检验
选择'
布拉布拉
'
选择XMLColumn.value('
声明命名空间soap=”http://schemas.xmlsoap.org/soap/envelope/";
声明名称空间google=”http://google.com";
/soap:Envelope[1]/soap:Header[1]/google:Teste[1]/google:Firma[1]',“varchar(255)”作为sou测试中的Firma
结果:

菲尔马


布拉布拉

select ref.col.value('.','varchar(255)')
from my_View tbl
cross apply tbl.XMLColumn.nodes('Envelope/Header/Teste/Firma') as ref(col)
   create table so_Test (XMLColumn xml)
    go
    insert so_Test
    select '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">  
    <soap:Header>   
        <Teste xmlns="http://google.com">    
            <Username></Username>    
            <Password></Password>    
            <Firma>Blabla</Firma>   
        </Teste>  
    </soap:Header>  
    <soap:Body>       
    </soap:Body>
    </soap:Envelope>'

    select XMLColumn.value('
    declare namespace soap="http://schemas.xmlsoap.org/soap/envelope/";
    declare namespace google="http://google.com";
    /soap:Envelope[1]/soap:Header[1]/google:Teste[1]/google:Firma[1]', 'varchar(255)') as Firma from  so_test