gpt4 book ai didi

mysql - 尝试运行脚本时,具有两个外键的表出现错误

转载 作者:行者123 更新时间:2023-11-29 10:59:30 26 4
gpt4 key购买 nike

我正在编写一个脚本,该脚本创建一个链接到同一数据库中其他两个表的表。我决定使用两个外键来链接到其他两个表。当我运行脚本时,出现错误 (1075),详细说明“只能有一个自动列,并且必须将其定义为键”。我相信我做的一切都是正确的,我不知道我哪里错了。我正在使用MySQL。任何帮助将不胜感激。谢谢:)

<小时/>

代码

        CREATE TABLE IF NOT EXISTS entries(
first_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
second_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
event_date DATE NOT NULL,
FOREIGN KEY (first_id) REFERENCES table1(first_id),
FOREIGN KEY (second_id) REFERENCES table2(second_id)
)

最佳答案

1)您正在尝试在单个表中创建两个主键,这是不可能的,表中只能有一个 auto_increment 键

CREATE TABLE IF NOT EXISTS entries(

first_id INT UNSIGNED NOT NULL AUTO_INCREMENT, second_id INT UNSIGNED NOT NULL AUTO_INCREMENT,

        event_date DATE NOT NULL,
FOREIGN KEY (first_id) REFERENCES table1(first_id),
FOREIGN KEY (second_id) REFERENCES table2(second_id)
)

2)您尝试将自动增量列作为另一个表的外键的第二件事

CREATE TABLE IF NOT EXISTS entries(
first_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
second_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
event_date DATE NOT NULL,

FOREIGN KEY (first_id) REFERENCES table1(first_id), FOREIGN KEY (second_id) REFERENCES table2(second_id)

        )

仅创建一个自动递增列,并且该列不应成为另一列的外键

关于mysql - 尝试运行脚本时,具有两个外键的表出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42505297/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com