【发布时间】:2011-02-06 04:28:33
【问题描述】:
DECLARE @mycur CURSOR
DECLARE @id int
DECLARE @ParentNodeName varchar(max)
DECLARE @NodeName varchar(max)
DECLARE @NodeText varchar(max)
SET @mycur = CURSOR
FOR
SELECT * FROM @temp
OPEN @mycur
FETCH NEXT FROM @mycur INTO @id,@ParentNodeName,@NodeName,@NodeText
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT @id -- sample statements
PRINT @ParentNodeName
PRINT @NodeName
SET @x.modify
('
insert attribute status {sql:variable("@status")}
as first
into (/@ParentNodeName/@NodeName/child::*[position()=sql:variable("@status")])[1]
')
FETCH NEXT FROM @mycur INTO @id,@ParentNodeName,@NodeName,@NodeText
END
DEALLOCATE @mycur
知道为什么我会收到此错误,因为如果我手动插入路径,查询工作正常
【问题讨论】:
-
@status是什么类型和值?这在您的样本中的任何地方都看不到....
标签: xml sql-server-2005 tsql