INSERT 语句错误:"VALUE is not valid at this position"

Error on INSERT statement: "VALUE is not valid at this position"

VALUE is not valid at this position

错误出现在 INSERT 语句中的 VALUES 上。它声明此版本不支持它。这是否意味着我需要更新或者我的语法有误?

create schema Cleudo;
USE CLEUDO;

create table Victim(
   Vic_ID INT NOT NULL AUTO_INCREMENT,
   Vic_Title VARCHAR(10) NOT NULL,
   Vic_Name VARCHAR(30) NOT NULL,
   Vic_Room VARCHAR(30) NULL,
   Vic_TOD VARCHAR(5) NULL,
   Vic_Weapon VARCHAR(30) NULL,
   PRIMARY KEY ( VIC_ID )
);

INSERT INTO Victim VALUES ('Miss','Scarlet','Library','10:45','candle-Stick');

当我运行你的代码时,我得到以下错误:

Column count doesn't match value count at row 1

发生这种情况是因为您没有为 table Vic_ID 赋值(这是有道理的,因为它是 auto-incremented)。为避免错误,您需要枚举目标列,如下所示:

INSERT INTO Victim (Vic_Title, Vic_Name, Vic_Room, Vic_TOD, Vic_Weapon)
VALUES ('Miss','Scarlet','Library','10:45','candle-Stick');

Demo on DB Fiddle

您收到此错误是因为列数不同,因此您需要将查询更改为:

INSERT INTO Victim(Vic_Title,Vic_Name,Vic_Room,Vic_TOD,Vic_Weapon) VALUES ('Miss','Scarlet','Library','10:45','candle-Stick');

如果您想指定 Vic_ID 值,您可以试试下面的查询:

INSERT INTO Victim VALUES (NULL,'Miss','Scarlet','Library','10:45','candle-Stick')