Меньше столбцов в INSERT, чем VALUES - PullRequest
3 голосов
/ 14 марта 2019

Я пишу хранимую процедуру и объявил таблицу как часть кода.Я получаю сообщение об ошибке

В операторе INSERT меньше столбцов, чем значений, указанных в предложении VALUES

Вот мой код:

DECLARE @FullTaskList TABLE (fval INT)

INSERT INTO @FullTaskList(fval) 
VALUES ( (1), (2), (3), (4), (5) )

Я был бы очень признателен, если бы вы могли мне помочь.

Ответы [ 2 ]

6 голосов
/ 14 марта 2019

У вас слишком много скобок:

DECLARE @FullTaskList TABLE ( fval INT )
INSERT INTO @FullTaskList ( fval )
    VALUES (1), (2), (3), (4), (5);

Ваш синтаксис интерпретируется как (1, 2, 3, 4, 5), то есть пять значений в одной строке, а не пять строк с одним значением.

5 голосов
/ 14 марта 2019

удалить лишние скобки, потому что это означает, что вы собираетесь вставить 5 столбцов вместо 5 строк

DECLARE @FullTaskList TABLE ( fval INT )
INSERT INTO @FullTaskList ( fval ) 
VALUES  (1), (2), (3), (4), (5) ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...