2013-03-14 14 views
11

更新プログラムに特定の列の変更が含まれている場合、postresqlで特定のレコードの更新を制限/防止できますか?Postgresql、特定の列の更新を制限する(読み取り専用)

これはどのように実装されますか。トリガー/制約?これを実装する最も効率的な方法は何でしょうか?

私は最も簡単な方法は、行への変更が禁止されている場合OLDNEW行とRAISE EXCEPTIONを比較しますBEFORE UPDATEトリガーを作成することであるバージョン9.1

答えて

15

を使用しています。

+0

クール、それは行く方法のように見えます。ありがとう! – stellard

5

いいえ、それは書くのはかなり簡単です。 古いフィールドと新しいフィールドを比較するBEFORE UPDATEトリガーを設定し、異なる場合はRAISE ERRORを実行します。 pgSQLのドキュメントには、トリガ機能を記述する方法の例がいくつかあります。

関連する問題