RDS for Postgre 的事件觸發SQL - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

RDS for Postgre 的事件觸發SQL

所有目前的 PostgreSQL 版本都支援事件觸發,因此RDS所有可用的 Postgre 版本也是如此SQL。您可以使用主要使用者帳戶 (預設 postgres) 來建立、修改、重新命名和刪除事件觸發程序。事件觸發是在資料庫執行個體層級上運作,可套用至執行個體上的所有資料庫。

例如,以下程式碼會建立事件觸發,在每個資料定義語言 (DDL) 命令結尾列印目前的使用者。

CREATE OR REPLACE FUNCTION raise_notice_func() RETURNS event_trigger LANGUAGE plpgsql AS $$ BEGIN RAISE NOTICE 'In trigger function: %', current_user; END; $$; CREATE EVENT TRIGGER event_trigger_1 ON ddl_command_end EXECUTE PROCEDURE raise_notice_func();

如需 PostgreSQL 事件觸發程序的詳細資訊,請參閱 PostgreSQL 文件中的事件觸發程序。

在 Amazon 上使用 PostgreSQL 事件觸發有幾個限制RDS。這些索引標籤包括以下項目:

  • 您無法在僅供讀取複本上建立事件觸發程序。不過,您可以在僅供讀取複本來源建立事件觸發。然後,事件觸發會複製到僅供讀取複本。從來源推送變更時,僅供讀取複本上的事件觸發不會在僅供讀取複本上發動。不過,如果提升僅供讀取複本,則資料庫操作發生時,現有的事件觸發會啟動。

  • 若要對使用事件觸發條件的 PostgreSQL 資料庫執行個體執行主要版本升級,請務必先刪除事件觸發條件,再升級執行個體。