pg_trigger
#目錄 pg_trigger
儲存資料表和檢視表上的觸發程序。如需更多資訊,請參閱 CREATE TRIGGER。
表 51.58. pg_trigger
欄位
欄位 類型 描述 |
---|
列識別碼 |
此觸發程序所在的資料表 |
此觸發程序複製自的父觸發程序(當建立分割區或將其附加到已分割的資料表時會發生這種情況);如果不是複製,則為零 |
觸發程序名稱(在相同資料表的觸發程序中必須是唯一的) |
要呼叫的函式 |
識別觸發程序觸發條件的位元遮罩 |
控制觸發程序在哪些 session_replication_role 模式下觸發。 |
如果觸發程序是內部產生的,則為 True(通常是為了強制執行由 |
參考完整性約束所參考的資料表(如果觸發程序不是用於參考完整性約束,則為零) |
支援唯一鍵、主鍵、參考完整性或排除約束的索引(如果觸發程序不是用於這些約束類型之一,則為零) |
與觸發程序相關聯的 |
如果約束觸發程序是可延遲的,則為 True |
如果約束觸發程序最初是延遲的,則為 True |
傳遞給觸發程序函式的引數字串數量 |
如果觸發程序是特定欄位的,則為欄位編號;否則為空陣列 |
要傳遞給觸發程序的引數字串,每個字串都以 NULL 結尾 |
觸發程序的 |
|
|
目前,只有 UPDATE
事件支援特定欄位的觸發程序,因此 tgattr
僅與該事件類型相關。tgtype
可能也包含其他事件類型的位元,但無論 tgattr
中有什麼,都假定這些事件都是資料表範圍的。
如果 tgconstraint
非零,則 tgconstrrelid
、tgconstrindid
、tgdeferrable
和 tginitdeferred
在很大程度上與參照的 pg_constraint
項目是冗餘的。 然而,非延遲觸發器有可能與延遲約束相關聯:外鍵約束可能同時具有一些延遲和一些非延遲觸發器。
如果關聯具有此目錄中的任何觸發器,則 pg_class.relhastriggers
必須為 true。
如果您在文件中發現任何不正確、與您特定功能的使用經驗不符,或需要進一步澄清的地方,請使用此表格來報告文件問題。