【发布时间】:2017-01-19 15:52:00
【问题描述】:
我想防止对 Postgres 数据库中的表进行 sql 行删除,以确保除了软删除之外没有其他删除行的方法,软删除实际上是对行的“活动”列的更新被软删除。
这可以使用 Postgres sql 规则实现还是有其他方法??
感谢代码示例。
【问题讨论】:
-
是的 -
ON DELETE DO INSTEAD应该做的事情 -
是否可以从规则中引发错误,而不是 DO INSTEAD NOTHING
-
如果您需要逻辑,最好使用函数 delete_row(args) 来执行所有操作,包括异常等
-
您能否提供一个不带参数并引发异常的简单函数的代码示例?这不是直截了当的,因为函数需要返回类型
标签: sql postgresql constraints rule soft-delete