Postgresql

Postgres 中的不可變欄位/單元格

  • December 21, 2020

有沒有辦法在 Postgres 記錄中創建不可變欄位/單元格?AKA,只允許該欄位被寫入一次,也許只是在插入時?

案例:我有一個記錄的“uuid”欄位,它永遠不應該被更改(與 PK 相同)。

有幾種技術:

  • 使用列權限,僅授予UPDATE其他列。
  • 創建一個UPDATE觸發器,當OLD.id <> NEW.id.

請注意,所有這些措施都不能拒絕表所有者訪問,因為所有者始終可以更改權限和刪除觸發器。

引用自:https://dba.stackexchange.com/questions/281909