我在查询中使用了Cursor
。
但是我在我循环的同一个表上插入行。
但是curosr没有将我的结果更新为neede结果。所以我必须再次运行我的查询再次添加neded字段。
在我的查询中,我打算插入用户添加的制造商品的rawitems。然而,那些添加的原始物品也可以制造,所以我需要在添加它们之后插入它们的原始物品。这就是我每次添加一行时都需要更新光标的原因。
我错过了什么吗? 我的游标查询如下:
DECLARE c_RawItmCursor CURSOR FOR
SELECT tbLines.LinesID
FROM dbo.tbLines
LEFT OUTER JOIN
(
Select TID, ItmID, UnitID
From tbLines
Where TID = @ISTransID
AND IsRawMaterial = 0 AND ItmType = 2
)tb
ON tb.TID = tbLines.TID
AND tb.ItmID = tbLines.ItmID
AND tb.UnitID = tbLines.UnitID
WHERE tbLines.TID = @ISTransID
AND tbLines.IsRawMaterial = 1
AND tbLines.ItmType = 2
and tb.TID IS NULL
OPEN c_RawItmCursor
FETCH NEXT FROM c_RawItmCursor into @ISTransLinesID
WHILE (@@FETCH_STATUS <> -1)
BEGIN
INSERT INTO tbLines ...
现在我希望我的光标也在新添加的行上循环。
我试图添加DYNAMIIC
,但也有ddn work。