动态更新游标值

时间:2017-02-08 08:55:46

标签: sql sql-server sql-server-2012 cursor

我在查询中使用了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。

0 个答案:

没有答案
相关问题