第一个表users
id name
---------------------
1 John
第二个表订单
id order name
----------------------------------
1 pencil John
用于与表 users
中的第一列 name
建立关系的 sql 代码
表 orders
name
ALTER TABLE orders
ADD CONSTRAINT user_name
FOREIGN KEY(name) REFERENCES users(name)
ON UPDATE CASCADE
ON DELETE CASCADE;
它给我错误
errno: 150 "Foreign key constraint is incorrectly formed"
如何解决这个问题??
最佳答案
所以经过搜索我发现解决方案很简单:D 使用相同的sql代码
ALTER TABLE orders
ADD CONSTRAINT user_name
FOREIGN KEY(name) REFERENCES users(name)
ON UPDATE CASCADE
ON DELETE CASCADE;
并在父列中使名称
唯一。
关于php - 在 mysql 中与 2(varchar 列)建立关系时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45242027/