Microsoft sql server 2014插入错误

时间:2016-05-31 16:39:12

标签: sql sql-server sql-insert sql-server-2014

当我使用此代码插入表格时出现此错误。

INSERT INTO Ridic values(
1, 'Franta' , 'Popkorn'  ,
2, 'Slavěna', 'Zíková'   ,
3, 'Havel'  , 'Bravenec' ,
4, 'Rudolf' , 'Stibor'   ,
5, 'Miloš'  , 'Vorlíček' ,
6, 'Agáta'  , 'Krobotová'
)
  

列名或提供的值与表定义不匹配。

但是当我尝试只插入一行时,一切正常

INSERT INTO Ridic values(1, 'Franta' , 'Popkorn')

我使用SQL server 2014管理工作室。 有表:

create table Ridic
(
UserID int primary key,
Jmeno varchar(10),
Prijmeni varchar(10)
)

4 个答案:

答案 0 :(得分:1)

values子句中的每组括号都指向一行。换句话说,这个语句试图插入一个包含18列的行,这当然是失败的(换行符,就像任何空格一样无关紧要)。相反,您应该有六组括号,每组括三列:

INSERT INTO Ridic VALUES
(1, 'Franta' , 'Popkorn'  ),
(2, 'Slavěna', 'Zíková'   ),
(3, 'Havel'  , 'Bravenec' ),
(4, 'Rudolf' , 'Stibor'   ),
(5, 'Miloš'  , 'Vorlíček' ),
(6, 'Agáta'  , 'Krobotová')

答案 1 :(得分:0)

测试以下声明。

INSERT INTO Ridic values(
1, 'Franta' , 'Popkorn'),
(2, 'Slavěna', 'Zíková'),
(3, 'Havel'  , 'Bravenec'),
(4, 'Rudolf' , 'Stibor'),
(5, 'Miloš'  , 'Vorlíček'),
(6, 'Agáta'  , 'Krobotová')

答案 2 :(得分:0)

你忘记了一些括号:

insert  into Ridic
values  (1, 'Franta', 'Popkorn')  ,
        (2, 'Slavěna', 'Zíková')  ,
        (3, 'Havel', 'Bravenec')  ,
        (4, 'Rudolf', 'Stibor')  ,
        (5, 'Miloš', 'Vorlíček')  ,
        (6, 'Agáta', 'Krobotová')

答案 3 :(得分:0)

试试这个:

INSERT  INTO Ridic
VALUES  ( 1, 'Franta', 'Popkorn' )  ,
        ( 2, 'Slavěna', 'Zíková' )   ,
        ( 3, 'Havel', 'Bravenec' ) ,
        ( 4, 'Rudolf', 'Stibor' )  ,
        ( 5, 'Miloš', 'Vorlíček' ) ,
        ( 6, 'Agáta', 'Krobotová' );