创建表时,Mysql 5.6版中的SQL语法错误

时间:2015-10-16 02:56:24

标签: php mysql sql-server database

我在我的sql文件中创建了一个表,我总是收到错误,

  

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第29行的''附近使用正确的语法。

我找不到我的错误。这是我的数据库表:

CREATE TABLE IF NOT EXISTS `student` (
        `stud_ID` INT(11) NOT NULL,
        `org_ID` INT(11) NOT NULL,
        `faculty_ID`    INT(11) NOT NULL,
        `fName` VARCHAR(30) NOT NULL,
        `lName` VARCHAR(30) NOT NULL,
        `mName` VARCHAR(30) NOT NULL,
        `DOB`date DEFAULT NULL,
        `gender` ENUM('male', 'female') NOT NULL,
        `religion` char(20) NOT NULL,
        `home_add` VARCHAR(100) NOT NULL,
        `telnum` INT(10) NOT NULL,
        `mobile` INT(20) NOT NULL,
        `email_address`     VARCHAR(50) NOT NULL,
        `username` VARCHAR(20) NOT NULL,
        `password` VARCHAR(20) NOT NULL,
        `con_password` VARCHAR(20) NOT NULL,
        `lastSchoolAttend` VARCHAR(50) NOT NULL,

        `lastYear` INT  NOT NULL,
        `lastSchoolADD` VARCHAR(100) NOT NULL,
        `stud_status` ENUM('okay', 'proby', 'suspended', 'kicked-out') NOT NULL  )ENGINE=InnoDB AUTO_INCREMENT;

有人可以回答我为什么我有这个错误并找出我的错误是什么?谢谢!

1 个答案:

答案 0 :(得分:0)

假设stud_id是主键及其自动增量

CREATE TABLE IF NOT EXISTS `student` (
        `stud_ID` INT(11)AUTO_INCREMENT PRIMARY KEY NOT NULL,
        `org_ID` INT(11) NOT NULL,
        `faculty_ID`    INT(11) NOT NULL,
        `fName` VARCHAR(30) NOT NULL,
        `lName` VARCHAR(30) NOT NULL,
        `mName` VARCHAR(30) NOT NULL,
        `DOB`date DEFAULT NULL,
        `gender` ENUM('male', 'female') NOT NULL,
        `religion` char(20) NOT NULL,
        `home_add` VARCHAR(100) NOT NULL,
        `telnum` INT(10) NOT NULL,
        `mobile` INT(20) NOT NULL,
        `email_address`     VARCHAR(50) NOT NULL,
        `username` VARCHAR(20) NOT NULL,
        `password` VARCHAR(20) NOT NULL,
        `con_password` VARCHAR(20) NOT NULL,
        `lastSchoolAttend` VARCHAR(50) NOT NULL,

        `lastYear` INT  NOT NULL,
        `lastSchoolADD` VARCHAR(100) NOT NULL,
        `stud_status` ENUM('okay', 'proby', 'suspended', 'kicked-out') NOT NULL  )ENGINE=InnoDB;

否则,如果你想要它没有自动增量/主键这不是那么好的方法,只需从代码的最后一行删除AUTO_INCREMENT