SQL 服务器将属性插入 xml 的顶级节点
SQL Server insert Attribute to top node of xml
我想向 XML 数据类型的根节点插入一个属性。如果我知道根节点的名称是 Quote,那么我可以这样插入:
DECLARE @myDoc xml;
DECLARE @id int;
SET @id = 12345;
SET @myDoc = '<Quote>
<Close>
123
</Close>
</Quote>' ;
SET @myDoc.modify('
insert attribute ID {sql:variable("@id") }
into (/Quote)[1] ');
SELECT @myDoc;
如果我不知道根节点名称怎么办?无论根名称如何,我都想向根节点插入一个属性。我正在使用 SQL Server 2008r2。谢谢
使用(/*)[1]
定位根节点:
SET @myDoc = '<Quote>
<Close>
123
</Close>
</Quote>' ;
SET @myDoc.modify('
insert attribute ID {sql:variable("@id") }
into (/*)[1] ');
我想向 XML 数据类型的根节点插入一个属性。如果我知道根节点的名称是 Quote,那么我可以这样插入:
DECLARE @myDoc xml;
DECLARE @id int;
SET @id = 12345;
SET @myDoc = '<Quote>
<Close>
123
</Close>
</Quote>' ;
SET @myDoc.modify('
insert attribute ID {sql:variable("@id") }
into (/Quote)[1] ');
SELECT @myDoc;
如果我不知道根节点名称怎么办?无论根名称如何,我都想向根节点插入一个属性。我正在使用 SQL Server 2008r2。谢谢
使用(/*)[1]
定位根节点:
SET @myDoc = '<Quote>
<Close>
123
</Close>
</Quote>' ;
SET @myDoc.modify('
insert attribute ID {sql:variable("@id") }
into (/*)[1] ');