create table #t
(
c1 int,
c2 xml default '<root/>'
)
insert into #t(c1) values(1)
declare @id uniqueidentifier,
@date datetime
set @id = newid()
set @date = getdate()
update #t
set c2.modify('insert <item id="sql:variable("@id")" date="sql:variable("@date")" /> after (/root)[1]')
报错:XQuery [#t.c2.modify()]: 在 '=' 旁的标识符中找到的源字符 0x40 无效。
然后修改成这样:
declare @id uniqueidentifier,
@date datetime,
@xml xml
set @id = newid()
set @date = getdate()
set @xml = '<item id="'+convert(varchar(36),@id) +'" date="' + convert(varchar(20),@date) + '" /> '
update #t
set c2.modify('insert sql:variable("@xml") after (/root)[1]')
任然报错:XQuery: 在 XQuery 中不支持 SQL 类型 'xml'。
然后我查看msdn实例:
http://msdn.microsoft.com/en-us/library/ms175466.aspx
B. Inserting multiple elements into the document 实例
任然报错。
请问要达到这样的目的。我该怎么写?
郭鹏