首页/数据/SQL 速查/DROP INDEX 前的依赖检查
本包目录(311 条)
查询基础33 条连接与子查询40 条聚合与窗口函数54 条函数速查60 条
变更与事务52 条
性能与执行计划72 条

DROP INDEX 前的依赖检查

索引可能承担唯一约束或支撑外键:删除前确认约束依赖与使用情况,避免删出约束失效或外键报错。

SQL 速查数据更新于 2026-10-12

MySQL

MySQL
-- 查看索引与唯一性
SHOW INDEX FROM users;
-- 删除由约束创建的唯一索引前,先处理约束关系
ALTER TABLE users DROP INDEX uk_email;

PostgreSQL

PostgreSQL
-- 查看依赖该索引的约束
SELECT conname, contype
FROM pg_constraint
WHERE conindid = 'uk_users_email'::regclass;
-- 约束索引不能直接 DROP,需先 ALTER TABLE ... DROP CONSTRAINT
唯一索引可能承担 UNIQUE 约束:删掉即失去约束
外键MySQL 外键要求被引用列有索引,删除相关索引会失败
流程先查使用情况,评估后再删

易错点

  • 直接把唯一索引删掉:唯一约束随之消失,重复数据可能趁机写入
  • 在 PG 里直接 DROP 由约束创建的索引:会被拒绝,要走 ALTER TABLE ... DROP CONSTRAINT

数据来源与参考

  • MySQL 8.0 Reference Manual · DROP INDEX Statement
  • PostgreSQL Documentation · ALTER TABLE
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌