很好的一天。我想添加一个 suppliers
当我试图保存时,它抛出这个错误。
1064-您的sql语法有错误;请查看与您的mysql服务器版本对应的手册,以获取正确的语法,以便在“0”(不为null)主键附近使用( supp_id
),独一无二 supp_name
( supp_name
))'在第1行
我已附上我的sql语句。
CREATE TABLE `project_inv`.`suppliers` (
`supp_id` INT(11) NOT NULL AUTO_INCREMENT ,
`supp_name` VARCHAR(255) NOT NULL ,
`supp_addr` VARCHAR(300) NOT NULL ,
`supp_phone` INT(20) NOT NULL ,
`supp_email` VARCHAR(255) NOT NULL ,
`supp_notes` VARCHAR(1000) NOT NULL ,
`status` ENUM(0) NOT NULL ,
PRIMARY KEY (`supp_id`),
UNIQUE `supp_name` (`supp_name`)
) ENGINE = InnoDB;
我想这是我唯一的钥匙,但我真的不知道是什么错误。任何形式的帮助都将不胜感激。谢谢
2条答案
按热度按时间v7pvogib1#
这不是关于
PRIMARY
或者UNIQUE
声明,但关于ENUM()
:它需要字符串文字,因此需要用单引号将列表中的值括起来:但是有一个不可为空的
ENUM()
只允许有一个值的列没有什么意义-基本上是强制每一行都有相同的值('0'
). 所以要么在列表中添加更多值。。。或者干脆把柱子拆了。e0bqpujr2#
通过在枚举中使用字符串尝试如下所示我使用了'n'instated 0