PostgreSQL 18 中文参考文档(未翻译部分保留英文)🌐 切换到英文原版 →

5.15. 依赖关系跟踪 #

当构建复杂的企业级数据库时,各对象之间会自发形成密不可分的网状依赖结构。例如视图依赖于底层的基表,外键约束依赖于父表的主键列,函数依赖于特定的数据类型。PostgreSQL 能够自动在系统目录中实时追踪这些对象之间的拓扑依赖关系。

当你试图删除一个被其他既有对象所依赖的基础对象时,系统默认遵循 RESTRICT 严格保护模式,直接拒绝删除并返回详尽的被依赖明细。如果你明确知晓其下游影响并希望一并级联销毁全部从属对象,可以在删除命令末尾显式指定 CASCADE:

DROP TABLE products CASCADE;

该命令不仅会彻底物理删除 products 表本身,还会自动级联删除任何依赖该表构建的下游视图、外键约束或触发器。