From ebe124eacd7c3faa36ed358e7cc1d7c5b419e5f6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 14:18:09 +0200 Subject: Merging upstream version 15.6. Signed-off-by: Daniel Baumann --- doc/src/sgml/ddl.sgml | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) (limited to 'doc/src/sgml/ddl.sgml') diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml index cfe3dcb..efe68fc 100644 --- a/doc/src/sgml/ddl.sgml +++ b/doc/src/sgml/ddl.sgml @@ -1154,16 +1154,16 @@ CREATE TABLE posts ( A foreign key must reference columns that either are a primary key or - form a unique constraint. This means that the referenced columns always - have an index (the one underlying the primary key or unique constraint); - so checks on whether a referencing row has a match will be efficient. - Since a DELETE of a row from the referenced table - or an UPDATE of a referenced column will require - a scan of the referencing table for rows matching the old value, it - is often a good idea to index the referencing columns too. Because this - is not always needed, and there are many choices available on how - to index, declaration of a foreign key constraint does not - automatically create an index on the referencing columns. + form a unique constraint, or are columns from a non-partial unique index. + This means that the referenced columns always have an index to allow + efficient lookups on whether a referencing row has a match. Since a + DELETE of a row from the referenced table or an + UPDATE of a referenced column will require a scan of + the referencing table for rows matching the old value, it is often a good + idea to index the referencing columns too. Because this is not always + needed, and there are many choices available on how to index, the + declaration of a foreign key constraint does not automatically create an + index on the referencing columns. @@ -2253,9 +2253,16 @@ REVOKE ALL ON accounts FROM PUBLIC; aclitem The privileges that have been granted for a particular object are - displayed as a list of aclitem entries, where each - aclitem describes the permissions of one grantee that - have been granted by a particular grantor. For example, + displayed as a list of aclitem entries, each having the + format: + +grantee=privilege-abbreviation*.../grantor + + Each aclitem lists all the permissions of one grantee that + have been granted by a particular grantor. Specific privileges are + represented by one-letter abbreviations from + , with * + appended if the privilege was granted with grant option. For example, calvin=r*w/hobbes specifies that the role calvin has the privilege SELECT (r) with grant option @@ -4150,7 +4157,7 @@ ALTER TABLE measurement ATTACH PARTITION measurement_y2008m02 CREATE INDEX measurement_usls_idx ON ONLY measurement (unitsales); -CREATE INDEX measurement_usls_200602_idx +CREATE INDEX CONCURRENTLY measurement_usls_200602_idx ON measurement_y2006m02 (unitsales); ALTER INDEX measurement_usls_idx ATTACH PARTITION measurement_usls_200602_idx; @@ -4267,7 +4274,9 @@ ALTER INDEX measurement_city_id_logdate_key Using ONLY to add or drop a constraint on only the partitioned table is supported as long as there are no partitions. Once partitions exist, using ONLY - will result in an error. Instead, constraints on the partitions + will result in an error for any constraints other than + UNIQUE and PRIMARY KEY. + Instead, constraints on the partitions themselves can be added and (if they are not present in the parent table) dropped. -- cgit v1.2.3