Попытка вставить в таблицу из двух других таблиц с петлейSQL Server: Ошибка «Необходимо объявить скалярную переменную»
DECLARE @RowCount INT
SET @RowCount = (SELECT Max(FogTopicsID) FROM FSB_FogTopics)
DECLARE @I INT
SET @I = 1
WHILE (@I <= @RowCount)
BEGIN
DECLARE @FogID INT, @StudentID INT, @TopicID INT, @ProcessStudentId INT
SELECT @FogID = FogID, @StudentID = StudentID, @TopicID = TopicsID
FROM FSB_FogTopics
WHERE FogTopicsID = @I
SELECT @ProcessStudentId = ProStudentId
FROM FSB_ProcessStudents
WHERE ProcessId = @FogID AND StudentId = @StudentID
INSERT INTO FSB_ProcessTopics([ProcessStudentId], [TopicId])
VALUES (@ProcessStudentId, @TopicID)
SET @I = @I + 1
END
, но я получаю ошибку
должны объявить скалярную переменную
@ProcessStudentId
Вы уверены, что значение задано? – Forklift
Почему вы делаете это с петлей в первую очередь? Это похоже на плохую идею. – Siyual