gpt4 book ai didi

MySql复合外键引用同一列

转载 作者:行者123 更新时间:2023-11-29 13:12:10 24 4
gpt4 key购买 nike

我正在尝试在 MySQL 中创建一个复合外键,但是两个字段都引用另一个表中的同一列。我不确定这是否是准确的方法,因为 sql 没有执行。下面是SQL语句

SQL

ALTER TABLE tableA ADD CONSTRAINT `comp_fk`
FOREIGN KEY (`a_id` , `b_id` )
REFERENCES `tabelB` (`p_id` , `p_id` )
ON DELETE NO ACTION
ON UPDATE NO ACTION;

错误

MySQL Database Error: Can't create table 'sep.#sql-984_8' (errno: 150)

最佳答案

通过单独应用约束来尝试此操作

ALTER TABLE `comp_fk`  
ADD CONSTRAINT `test` FOREIGN KEY (`a_id`) REFERENCES `tabelB`(`id`) ON UPDATE NO ACTION ON DELETE NO ACTION,
ADD CONSTRAINT `test2` FOREIGN KEY (`b_id`) REFERENCES `tabelB`(`id`) ON UPDATE NO ACTION ON DELETE NO ACTION

关于MySql复合外键引用同一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21944120/

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