繁体   English   中英

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

[英]SQL syntax error in Mysql version 5.6 when creating a table

我在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;

有人可以回答我为什么出现此错误并查明我的错误是什么吗? 谢谢!

假设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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM