繁体   English   中英

创建表中的MySQL错误#1064

[英]MySQL error #1064 in CREATE TABLE

这是我要创建的两个表的SQL:

CREATE TABLE IF NOT EXISTS tbl_a(
    id INT(6) UNSIGNED NOT NULL,
    PRIMARY KEY(id)
)ENGINE = INNODB;

CREATE TABLE IF NOT EXISTS tbl_b(
    id INT(6) UNSIGNED NOT NULL,
    PRIMARY KEY(id),
    FOREIGN KEY id REFERENCES tbl_a(id) ON DELETE CASCADE ON UPDATE CASCADE
)ENGINE = INNODB;

这是我得到的错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'REFERENCES a(id) ON DELETE CASCADE ON UPDATE CASCADE )ENGINE = INNODB' at line 4

有人可以建议我一个解决方案吗?

在键名周围添加()

CREATE TABLE IF NOT EXISTS tbl_b(
    id INT(6) UNSIGNED NOT NULL,
    PRIMARY KEY(id),
    FOREIGN KEY (id) REFERENCES tbl_a(id) ON DELETE CASCADE ON UPDATE CASCADE
)ENGINE = INNODB;

暂无
暂无

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

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