[英]postgres trigger creation
如果它不存在,我該如何只創建一個觸發器?
當我創建或替換時,我得到語法錯誤,所以我正在尋找一種方法來測試是否存在觸發器。
我總是可以從pg_trigger中選擇*,但我確信有更合適的方法。
謝謝
Postgres可以有條件地刪除觸發器 - 請參閱文檔 。 在創建觸發器之前執行此操作,然后它將始終有效。
DROP TRIGGER IF EXISTS mytrigger ON mytable;
正如傑克在評論中指出的那樣,這個功能自8.2以來才可用; 這已經超過四年了,所以它應該在你的版本中可用。
CREATE TRIGGER (NameOfTrigger) AFTER INSERT OR UPDATE ON (NameOfTable)
DROP TRIGGER IF EXISTS (NameOfTrigger) ON (NameOfTable);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.