Вы должны объявить скалярную переменную "@ID_PLA" при извлечении данных из курса - PullRequest
0 голосов
/ 15 мая 2019

У меня есть следующий код:

DECLARE @ID_PLA INT
SET @ID_PLA = 0

DECLARE Zakaz_cursor1 CURSOR
FOR SELECT ID_PLACEMENT FROM Zakaz


OPEN Zakaz_cursor1

FETCH NEXT FROM Zakaz_cursor1 INTO @ID_PLA

PRINT @ID_PLA

Необходимо, чтобы этот код создал курсор, который будет содержать ID_PLACEMENT. После этого курсора извлекается первая строка и добавляется переменная, которая затем выводится. Однако при выполнении команды

FETCH NEXT FROM Zakaz_cursor1 INTO @ID_PLA

У меня ошибка:

You must declare a scalar variable "@ID_PLA"

Я не понимаю, в чем дело, когда я объявляю эту переменную. Как я могу решить это?

1 Ответ

0 голосов
/ 15 мая 2019

Это правильный образец для написания курсора -

DECLARE @ID_PLA INT

DECLARE Zakaz_cursor1 CURSOR FOR 
SELECT ID_PLACEMENT FROM Zakaz 

OPEN Zakaz_cursor1  
FETCH NEXT FROM Zakaz_cursor1 INTO @ID_PLA  

WHILE @@FETCH_STATUS = 0  
BEGIN  

      --Perform your actions here 

      PRINT @ID_PLA

      --END of Actions

      FETCH NEXT FROM Zakaz_cursor1 INTO @ID_PLA
END 

CLOSE Zakaz_cursor1  
DEALLOCATE Zakaz_cursor1 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...