xam*_*mir 55 mysql foreign-key constraint drop-table
如何在MySql中查看与表相关的外键?
背景:我想在 MySql 中删除一个具有外键约束的表。当我这样做时,我得到了这个:
Error Code: 1217. Cannot delete or update a parent row: a foreign key constraint fails
如何删除与表相关的外键离开其他人。
Vér*_*ace 74
首先,FOREIGN KEY以这种方式找出您的约束名称:
SELECT
TABLE_NAME,
COLUMN_NAME,
CONSTRAINT_NAME, -- <<-- the one you want!
REFERENCED_TABLE_NAME,
REFERENCED_COLUMN_NAME
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_NAME = 'My_Table';
Run Code Online (Sandbox Code Playgroud)
WHERE如果My_Table在不同模式中调用了多个表,您还可以添加(到子句)。
AND TABLE_SCHEMA = 'My_Database';
Run Code Online (Sandbox Code Playgroud)
然后您可以通过以下方式删除命名约束:
ALTER TABLE My_Table DROP FOREIGN KEY My_Table_Constraint;
Run Code Online (Sandbox Code Playgroud)