繁体   English   中英

错误1064(42000)MySQL主键参考

[英]ERROR 1064 (42000) MySQL PRIMARY KEY REFERENCES

我以前从未使用过MySQL,但是这次没有选择。 我有一个我不明白的错误。 我尝试创建一个表:

CREATE TABLE proprietaire(
    num_cpt INT REFERENCES compte(num_cpt) PRIMARY KEY,
    num_client INT REFERENCES client(num_client),
    num_commercant INT REFERENCES commercant(num_commercant)
);

我看不到我的错误。 你能帮我这个忙吗?

谢谢

在MySQL中,要强制使用外键引用,不能将references作为修饰符放在列上。 您需要为它们设置单独的约束:

CREATE TABLE proprietaire (
    num_cpt INT  PRIMARY KEY,
    num_client INT,
    num_commercant INT,
    CONSTRAINT fk_num_cpt FOREIGN KEY REFERENCES compte(num_cpt),
    CONSTRAINT fk_num_client FOREIGN KEY REFERENCES client(num_client),
    CONSTRAINT fk_num_commercant FOREIGN KEY REFERENCES commercant(num_commercant)
);

但是,您的特定问题是PRIMARY KEY约束之前的REFERENCES

注意:在大多数英语数据库中, num的使用为id num听起来像是计数或某物的“数量”,而id是标识符的缩写。

暂无
暂无

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

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