创建phpMyAdmin错误#1064

时间:2017-07-18 02:39:14

标签: sql enums phpmyadmin

我正在关注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行

2 个答案:

答案 0 :(得分:0)

你不能设置枚举(0)错误

  

check this if you want use enum

答案 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