我正在关注youtube教程here。即使我跟着它去了。问题在于它没有用,因为我有一个更新版本。我希望你能提供帮助。 SQL预览在这里:
CREATE TABLE `test_database`.`members`
(
`id` INT NOT NULL AUTO_INCREMENT ,
`username` VARCHAR(255) NOT NULL ,
`country` VARCHAR(255) NOT NULL ,
`county/state` VARCHAR(255) NOT NULL ,
`city` VARCHAR(255) NOT NULL ,
`bio` TEXT NOT NULL ,
`email` VARCHAR(255) NOT NULL ,
`password` VARCHAR(255) NOT NULL ,
`signupdate` DATETIME NOT NULL ,
`lastlogin` DATETIME NOT NULL ,
`accounttype` ENUM(0) NOT NULL ,
`emailactivated` ENUM(0) NOT NULL DEFAULT '\'0\'' ,
PRIMARY KEY (`id`), UNIQUE (`email`)
)
ENGINE = MyISAM;
这是我收到的错误消息:#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以便在
附近使用正确的语法'0) NOT NULL , `emailactivated` ENUM(0) NOT NULL DEFAULT '\'0\'' , PRIMARY KE
第1行
答案 0 :(得分:0)
你不能设置枚举(0)错误
答案 1 :(得分:0)
尝试更改您的查询:
CREATE TABLE test_database.members
(
id INT NOT NULL AUTO_INCREMENT ,
username VARCHAR(255) NOT NULL ,
country_state VARCHAR(255) NOT NULL ,
country VARCHAR(255) NOT NULL ,
city VARCHAR(255) NOT NULL ,
bio TEXT NOT NULL ,
email VARCHAR(255) NOT NULL ,
password VARCHAR(255) NOT NULL ,
signupdate DATETIME NOT NULL ,
lastlogin DATETIME NOT NULL ,
accounttype ENUM('0') NOT NULL ,
emailactivated ENUM('0') NOT NULL DEFAULT '0' ,
PRIMARY KEY (id), UNIQUE (email)
)
ENGINE = MyISAM;
尝试使用_而不是/列名称。或者只是使用驼峰的情况。有时如果你使用/。它会给你一个错误。
对于枚举列类型,它就像你给出了一个选择,所以最好在之后做出选择。喜欢 ENUM('a', 'b', 'c') NOT NULL DEFAULT 'a'
相反。您使用的是什么版本的MySQL?还有phpMyAdmin吗?有时候还有一个bug。 阅读link