Я пишу хранимую процедуру SQL, которая должна перемещать строки от Table0
до Table1
. Table1
имеет схему, которая точно такая же, как схема Table0
, за исключением того, что имеется дополнительный столбец INT, называемый DataIndex
. Значение, которое нужно вставить в этот столбец, вычисляется в начале процедуры. Предположим, что для обсуждения всегда 100.Как перенести строки из одной таблицы SQL в другую таблицу SQL с дополнительными столбцами?
Я написал следующий SQL, чтобы попытаться сделать это:
INSERT INTO Table1
SELECT *, 100 AS INT_COLUMN_VALUE
FROM Table0;
Когда я запускаю этот код, я получаю следующее сообщение об ошибке: Invalid имя объекта «INT_COLUMN_VALUE».
Как это сделать? Моя база данных работает под управлением MS SQL Server 2008.
просто удалить имя столбца - 'INT_COLUMN_VALUE' из вашего кода, и попытаться запустить его, вы, вероятно, не имеют столбец с именем' INT_COLUMN_VALUE' –
Я не думаю, что вы должны указать имя столбца, когда делая вставку. Что еще более важно, вы должны только убедиться, что вы выбираете то же количество столбцов, что и то, что входит в таблицу (если вы не укажете столбцы как часть команды вставки). –
Ooops, я только что понял, что в моем реальном коде я опечатал имя одной из моих таблиц –