20

如果更新包括对特定列的更改,是否可以让 postresql 限制/阻止对特定记录的更新?

这将如何实施。触发器/约束?实现这一点的最有效方法是什么?

我使用的是 9.1 版

4

2 回答 2

28

最简单的方法是创建BEFORE UPDATE将比较OLDNEW行 的触发器,RAISE EXCEPTION如果​​禁止更改行。

于 2013-03-14T14:21:24.703 回答
7

不,但写起来应该很简单。只需设置一个BEFORE UPDATE触发器,将旧字段与新字段进行比较,并RAISE ERROR在它们不同时执行。pgSQL 文档有一些关于如何编写触发器函数的示例。

于 2013-03-14T14:21:59.777 回答