Mssql insert into: SQL INSERT INTO Statement
Как вставить результат хранимой процедуры в таблицу
Иногда вам нужно сохранить результат хранимой процедуры в таблицу или временную таблицу вместо возврата вывода. Сохранение вывода хранимой процедуры в таблице дает вам больше возможностей, например, вы можете проверить вывод хранимой процедуры в любое время позже или вы можете соединить эту таблицу с другой таблицей и т. д.
Давайте продемонстрируем, как вставить вывод хранимой процедуры в таблицу.
Сначала мы создаем пример таблицы с именем StudentData и вставляем в нее несколько фиктивных записей.
CREATE TABLE dbo.StudentData(ID INT IDENTITY(1,1), Name VARCHAR(100)) ВСТАВИТЬ В dbo.StudentData(Имя) ЗНАЧЕНИЯ('Рохит Хатри'), («Суджой Гош»), («Манодж Сингх»), («Вимал Кумар») ИДТИ ВЫБЕРИТЕ * ИЗ dbo.StudentData;
Теперь мы создадим хранимую процедуру, которая возвращает все записи учащихся из StudentData 9Таблица 0009.
СОЗДАТЬ ПРОЦЕДУРУ dbo. FetchStudentData КАК НАЧИНАТЬ ВЫБЕРИТЕ * ИЗ dbo.StudentData; КОНЕЦ ИДТИ EXEC dbo.FetchStudentData GO
Позволяет сохранить вывод вышеуказанной хранимой процедуры в таблицу.
Сначала мы создадим еще одну таблицу с именем StudentData_Log , которая будет использоваться для хранения вывода хранимой процедуры.
CREATE TABLE dbo.StudentData_Log (ID INT, имя VARCHAR(100)) SELECT * FROM dbo.StudentData_Log;
Как видите, сейчас в таблице нет данных.
Позволяет выполнить хранимую процедуру и сохранить выходные данные в таблице StudentData_Log , как показано ниже.
ВСТАВИТЬ В dbo.StudentData_Log EXEC dbo.FetchStudentData GO
Давайте проверим таблицу StudentData_Log , и вы увидите, что выходные данные хранимой процедуры сохраняются в таблице. Таблица имеет то же количество записей, что и хранимая процедура.
SELECT * FROM dbo.