mysql - 如何给MySQL表添加外键?

标签 mysql database foreign-keys foreign-key-relationship alter-table

我使用 MySQLInnoDB 引擎。我仔细检查了列的类型。但总是有:

错误代码:1215。无法添加外键约束

我尝试过:

ALTER TABLE `mail`.`boxes`  
    ADD CONSTRAINT FK_id 
    FOREIGN KEY (id) 
    REFERENCES `mail`.`users` (id)
    ON UPDATE NO ACTION 
    ON DELETE NO ACTION; 

ALTER TABLE `mail`.`boxes` 
  ADD FOREIGN KEY (id)
  REFERENCES `mail`.`users` (id)

没有任何作用(((

请帮忙,我做错了什么(除了选择 MySQL :-) )?

最佳答案

如果表包含数据,那么您无法添加外键,您可以删除表对象并重新创建 使用下面的引用相同

Basics of Foreign Keys in MySQL?

关于mysql - 如何给MySQL表添加外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17613758/

相关文章:

php - 检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行 '07:28:29)' 附近使用的正确语法

mysql - 显示表命令的约束

sql - 重构字段的外键

php - SQL中的一对多关系 - 外键错误

mysql - MySql 中的查询问题(两个表列之间的 LIKE)

php - 将购物车和用户数据插入订单系统的 mysql

MySQL 开销,是我的查询错误还是应该优化表?

mysql - HAVING 子句影响结果

database - 在 MariaDB 服务器中设置 UTF-8 会忽略 character_set_system

python - 使用 sqlite 在 python 中使用 cursor.execute 和 cursor.fetchall 的问题