我继承了一个相当大的 postgreql 数据库。我们有一个每月运行一次的作业,它备份现有数据库并使用我们收到的更新的供应商数据创建一个新数据库。
目前有一个小问题。无需详细说明表设置、数据建模等,我相信可以通过简单的删除查询来修复它,因为表设置为使用级联删除。
但是,从供应商提供的源代码生成这个数据库大约需要 9 个小时,所以我总是犹豫是否要引入新的更改。我目前有一个该数据库的副本,我打算首先在其上运行查询,以使用户“可以”成功运行。但是,一般来说,sql 的缺点之一是,当进行删除时,输出通常是以下几行:
查询成功返回:x 行受影响,y ms 执行时间。
postgres 中是否有办法确定在使用级联删除时从哪些表中删除了哪些行?我想在我的副本上运行查询,看看被删除的内容是否符合我的预期,至少在哪些表被击中。这可能吗?