【问题标题】:foreign key reference syntax error外键引用语法错误
【发布时间】:2013-05-21 22:07:33
【问题描述】:

我无法使用以下代码创建成员表。 check the manual that corresponds to your MySQL server version for the right syntax to use near 'schoolID int NOT NULL FOREIGN KEY REFERENCES schools(schoolID),' at line 1

语法有什么问题?

谢谢!

CREATE TABLE schools (
    schoolID int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    parentID int NOT NULL DEFAULT 0,
    schoolname VARCHAR(199) NOT NULL,  
    active int NOT NULL,
    dateENTERED datetime NOT NULL
);
CREATE TABLE members
(
    memberID int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    schoolID int NOT NULL FOREIGN KEY REFERENCES schools(schoolID),
    active int NOT NULL,
    dateENTERED datetime NOT NULL
);

【问题讨论】:

    标签: mysql sql


    【解决方案1】:
    CREATE TABLE members
    (
        memberID int NOT NULL AUTO_INCREMENT PRIMARY KEY,
        schoolID int NOT NULL ,
        active int NOT NULL,
        dateENTERED datetime NOT NULL,
        CONSTRAINT member_FK FOREIGN KEY (schoolID) REFERENCES schools(schoolID)
    );
    

    你也可以这样做,

    CREATE TABLE members
    (
        memberID int NOT NULL AUTO_INCREMENT,
        schoolID int NOT NULL ,
        active int NOT NULL,
        dateENTERED datetime NOT NULL,
        CONSTRAINT member_PK PRIMARY KEY (memberID),
        CONSTRAINT member_FK FOREIGN KEY (schoolID) REFERENCES schools(schoolID)
    );
    

    【讨论】:

    • 您可能需要添加有关内联约束定义错误的注释
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 2013-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    相关资源
    最近更新 更多