pg_constraint
#目錄 pg_constraint
儲存表格上的檢查約束、主鍵約束、唯一約束、外鍵約束和排除約束,以及網域上的非空約束。(欄位約束沒有特別處理。每個欄位約束都等同於某個表格約束。)關係上的非空約束在 pg_attribute
目錄中表示,而不是在這裡。
使用者定義的約束觸發器(使用 CREATE CONSTRAINT TRIGGER
建立)也會在此表格中產生一個項目。
網域上的檢查約束也儲存在這裡。
表 51.13. pg_constraint
欄位
欄位 類型 說明 |
---|
列識別碼 |
約束名稱(不一定是唯一的!) |
包含此約束的命名空間的 OID |
|
約束是否可以延遲? |
約束預設是否延遲? |
約束是否已驗證?目前,只能對外鍵和 CHECK 約束為 false |
此約束所在的表格;如果不是表格約束則為零 |
此約束所在的網域;如果不是網域約束則為零 |
支援此約束的索引,如果它是唯一約束、主鍵約束、外鍵約束或排除約束;否則為零 |
父分割表格的對應約束,如果這是分割區上的約束;否則為零 |
如果是外鍵,則為參考的表格;否則為零 |
外鍵更新動作代碼: |
外鍵刪除動作代碼: |
外鍵比對類型: |
此約束是針對關係在本機定義的。請注意,約束可以同時在本機定義和繼承。 |
此約束具有的直接繼承祖先數量。具有非零祖先數量的約束無法刪除或重新命名。 |
此約束是針對關係在本機定義的。這是一個不可繼承的約束。 |
如果是表格約束(包括外鍵,但不包括約束觸發器),則為受約束的欄位清單 |
如果是外鍵,則為參考的欄位清單 |
如果是外鍵,列出 PK = FK 比較時的相等運算子。 |
如果是外鍵,列出 PK = PK 比較時的相等運算子。 |
如果是外鍵,列出 FK = FK 比較時的相等運算子。 |
如果是具有 |
如果是排除約束,則列出每個欄位的排除運算子。 |
如果是檢查約束,則為表示式的內部表示法。(建議使用 |
在排除約束的情況下,conkey
僅對於作為簡單欄位參考的約束元素有用。對於其他情況,conkey
中會出現零,並且必須查詢關聯索引以發現受約束的表示式。(因此,conkey
具有與 pg_index
.indkey
相同的內容。)
pg_class.relchecks
需要與此表中針對每個關係找到的檢查約束條目的數量一致。
如果您在文件中看到任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的內容,請使用 此表單 回報文件問題。