RDBMS中具有外键列但未标记为一个列的表导致许多孤立行。
如果我更改表并使该列成为外键约束,那么会发生什么变化。
表:
Posts: id, title, body, user_id (currently not marked as FK)
我会失去孤儿行吗?
编辑: 1.使用正确的FK约束和从旧表到新表的端口数据重新创建表是否有意义?
答案 0 :(得分:0)
如果在子表中导致“孤立”记录,MySQL将禁止创建外键索引。
您可以使用
强制创建索引set foreign_key_checks = 0;
在运行alter
查询之前 - 但您最终必须清理悬空记录。