Postgresql
限制postgres中某些表的刪除語句?
我有一個問題,我的客戶抱怨記錄被刪除,即使我看到該表中的所有 id 都是正確的,只是為了確保一切都像它應該的那樣,有沒有辦法在 postgres 中禁用某個表的刪除語句?
REVOKE DELETE ON someTable FROM roleOfCustomers;
一種可能的方法是使用RULES。
例如:
CREATE RULE someTable_do_not_delete AS ON DELETE TO someTable DO INSTEAD NOTHING;
注意。當使用 ON DELETE DO INSTEAD NOTHING 時,正在執行 DELETE 的程式碼不會收到沒有任何事情發生的通知,根據客戶端,DELETE 將成功。