使用命名空间更新SQL Server 2005中的XML变量

时间:2013-08-26 14:17:35

标签: xml sql-server-2008 tsql xsd xquery-sql

我正在尝试使用TRANSACT SQL向包含名称空间的XML变量添加新节点,但没有错误,也没有更新变量。

这是我到目前为止所做的:

declare @xml xml;
set @xml = '<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="ecasData">
        <xs:complexType>
            <xs:all minOccurs="1" maxOccurs="1">
                <xs:element id="cmbZona" name="cmbZona" minOccurs="0" maxOccurs="1">
                    <xs:simpleType>
                        <xs:annotation>
                            <xs:documentation>#ZONA#</xs:documentation>
                        </xs:annotation>
                        <xs:restriction base="xs:string" />
                    </xs:simpleType>
               </xs:element>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>';
set @xml.modify('insert <xs:test>1</xs:test> 
into (/xs:schema/xs:element[@name="ecasData"])[0]');
select @xml;

谢谢!

1 个答案:

答案 0 :(得分:0)

我解决了。

into (/xs:schema/xs:element[@name="ecasData"])[1]');

做了神奇的事。