我想禁用表上的 DELETE 语句。我需要做的是设置一个字段值,而不是删除相应的记录。
到目前为止,我已经尝试了以下方法:
CREATE TRIGGER delete_trg
INSTEAD OF DELETE
ON schema.tbl
FOR EACH ROW
EXECUTE PROCEDURE schema.tbl_delete_fn();
我的schema.tbl_delete_fn()
功能如下:
CREATE OR REPLACE FUNCTION schema.tbl_delete_fn()
RETURNS trigger AS
BEGIN
NEW.deleted := true;
RETURN NEW;
END;
到目前为止,这似乎不起作用......有什么想法吗?