日安,我正在我的数据库上创建一些表,当我试图保存时,它抛出了这个错误
1064-您SQL语法中有错误; 检查与MySQL server版本相对应的手册中是否有正确的语法,以便在第1行的“0)NOT NULL,date_registerced
DATETIME NOT NULL,last_login
TIMESTAMP NOT”附近使用
以前已经在Stackoverflow上调试过这种错误,解决方案是从TIMESTAMP列中删除长度。 其他解决方案要求建议从列标识符中删除引号或使用刻度号。 不幸的是,我的DATETIME和TIMESTAMP列没有长度,我的列标识符周围有刻度。
下面是我的SQL语句的样子。 有人能帮忙吗?
CREATE TABLE `inventoryman_db`.`users`
( `id` INT NOT NULL AUTO_INCREMENT ,
`full_name` VARCHAR(255) NOT NULL ,
`email` VARCHAR(255) NOT NULL ,
`password` VARCHAR(300) NOT NULL ,
`usertype` ENUM(0) NOT NULL ,
`date_registered` DATETIME NOT NULL ,
`last_login` TIMESTAMP NOT NULL ,
`notes` VARCHAR(255) NOT NULL COMMENT 'For verification and other purposes, we will store a random key here' ,
PRIMARY KEY (`id`))
ENGINE = InnoDB;
试试看,你只需要在enum('0')中添加引号作为enum('0')考虑作为字符串,并对他的数组进行索引。
CREATE TABLE `percept`.`users1` ( `id` INT NOT NULL AUTO_INCREMENT ,
`full_name` VARCHAR(255) NOT NULL , `email` VARCHAR(255) NOT NULL ,
`password` VARCHAR(300) NOT NULL ,
`usertype` ENUM('0') NOT NULL ,
`date_registered` DATETIME NOT NULL ,
`last_login` TIMESTAMP NOT NULL ,
`notes` VARCHAR(255) NOT NULL COMMENT 'For verification and other purposes, we will store a random key here' ,
PRIMARY KEY (`id`)) ENGINE = InnoDB `
只需在枚举中添加引号