Mysql 插入新寄存器时自动递增错误
Mysql autoincrement error when insert a new register
我有这个table
CREATE TABLE IF NOT EXISTS `test`.`Challenge` (
`idChallenge` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NOT NULL,
`description` VARCHAR(45) NULL DEFAULT NULL,
`start` DATETIME NOT NULL,
`ending` DATETIME NULL DEFAULT NULL,
PRIMARY KEY (`idChallenge`),
UNIQUE INDEX `name_UNIQUE` (`name` ASC))
ENGINE = InnoDB;
当我尝试插入一个新寄存器时:
insert into challenge (name, start) values ("test", now());
给我这个错误:
Error Code: 1364. Field 'id_challenge' doesn't have a default value
但首先我的 table 中没有这个专栏,如果我把它创建。
我们必须对保留字使用反引号 `。
insert into Challenge (`name`, `start`) values ("test", now());
问题出在 idChallenge,如果我将其更改为 idchallenge 就可以了。
我有这个table
CREATE TABLE IF NOT EXISTS `test`.`Challenge` (
`idChallenge` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NOT NULL,
`description` VARCHAR(45) NULL DEFAULT NULL,
`start` DATETIME NOT NULL,
`ending` DATETIME NULL DEFAULT NULL,
PRIMARY KEY (`idChallenge`),
UNIQUE INDEX `name_UNIQUE` (`name` ASC))
ENGINE = InnoDB;
当我尝试插入一个新寄存器时:
insert into challenge (name, start) values ("test", now());
给我这个错误:
Error Code: 1364. Field 'id_challenge' doesn't have a default value
但首先我的 table 中没有这个专栏,如果我把它创建。
我们必须对保留字使用反引号 `。
insert into Challenge (`name`, `start`) values ("test", now());
问题出在 idChallenge,如果我将其更改为 idchallenge 就可以了。