我有一個包含變量聲明爲DECLARE @@var_1 as bigint
,它包含一個while循環WHILE @@FETCH_STATUS
現在使用NPoco引發例外Must declare the scalar variable "@FETCH_STATUS".
如何解決它執行這樣的腳本的SQL腳本?主要目的是在SQL Server和ORACLE中使用相同的腳本。SQL腳本光標,變量和NPoco
DECLARE @@LayerId bigint;
DECLARE @@DId as bigint;
DECLARE @@DataSegment as CURSOR;
DECLARE @@IterationNo as int;
IF OBJECT_ID(N'DataSegment') IS NOT NULL AND
OBJECT_ID(N'Layer') IS NOT NULL
BEGIN
SET @@IterationNo = 0;
SET @@DataSegment = CURSOR FORWARD_ONLY FOR
SELECT Id FROM DataSegment
OPEN @@DataSegment;
FETCH NEXT FROM @@DataSegment INTO @@DId
WHILE @@FETCH_STATUS = 0
BEGIN
SET @@IterationNo = @@IterationNo + 1;
SET @@LayerId = 9;
PRINT @@LayerId;
--Insert parent RouteVersion
INSERT INTO Layer Values(@@LayerId,'Migration',6,'Trace',
'Route','TEST', @@DId, NULL, @@LayerId, 9)
Print 'Iter is ' ;
Print @@IterationNo
--fetch next
FETCH NEXT FROM @@DataSegment INTO @@DId;
END
CLOSE @@DataSegment;
DEALLOCATE @@DataSegment;
END
在此先感謝。
你能否在這裏暗示你的代碼 – mansi
@MansiChaudhari現在檢查。 –
請嘗試使用'@@ Fetch_Status'。 – FDavidov