gpt4 book ai didi

MySQL唯一索引替换一个外键

转载 作者:行者123 更新时间:2023-11-30 23:00:12 27 4
gpt4 key购买 nike

我有一个名为 pivot 的数据透视表,它将 tableA 映射到 tableB`。

pivot 具有以下字段:tA_idtB_id

我有两个外键 - 每个字段一个。

1) pivot_tA_id_foreign for tA_id 引用 tableA 上的 id

2) pivot_tB_id_foreign for tB_id 引用 tableB 上的 id

现在,当我像这样在两列上添加一个 UNIQUE 索引时:

ALTER TABLE 'pivot' ADD UNIQUE 'pivot_tA_id_tB_id_unique' ('tA_id', 'tB_id')

pivot_tA_id_foreign 索引消失了。

我需要两个列的外部索引和 UNIQUE。

最佳答案

您可以使用 alter table 命令(您不需要引号,因为您输入错误)或在数据透视表定义中包含唯一约束:

ALTER TABLE pivot ADD UNIQUE pivot_tA_id_tB_id_unique (tA_id, tB_id);

OR

create table pivot(
tA_id int,
tB_id int,
foreign key(tA_id) references tableA(id),
foreign key(tB_id) references tableB(id),
constraint pivot_tA_id_tB_id_unique UNIQUE (tA_id, tB_id)
);

关于MySQL唯一索引替换一个外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24436294/

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