Skip to content

Commit 1f0d045

Browse files
Developerhackorum
authored andcommitted
pgsql: doc: Distinguish table and index storage parameters in CREATE TABLE
The WITH clause in CREATE TABLE applies to both tables and constraint indexes, but uses a single storage_parameter placeholder in the syntax synopsis making the distinction unclear. Rename the placeholder to table_storage_parameter and index_storage_parameter respectively in the synopsis and add a separate term for the index variant in the WITH parameter description. Update the description to reference the index storage parameters section in CREATE INDEX directly rather than the top-level CREATE INDEX page. Also rename the Storage Parameters subsection to Table Storage Parameters to make clear it covers only table parameters.
1 parent 1d1d7b0 commit 1f0d045

2 files changed

Lines changed: 21 additions & 12 deletions

File tree

doc/src/sgml/ref/create_index.sgml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
2525
( { <replaceable class="parameter">column_name</replaceable> | ( <replaceable class="parameter">expression</replaceable> ) } [ COLLATE <replaceable class="parameter">collation</replaceable> ] [ <replaceable class="parameter">opclass</replaceable> [ ( <replaceable class="parameter">opclass_parameter</replaceable> = <replaceable class="parameter">value</replaceable> [, ... ] ) ] ] [ ASC | DESC ] [ NULLS { FIRST | LAST } ] [, ...] )
2626
[ INCLUDE ( <replaceable class="parameter">column_name</replaceable> [, ...] ) ]
2727
[ NULLS [ NOT ] DISTINCT ]
28-
[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) ]
28+
[ WITH ( <replaceable class="parameter">index_storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) ]
2929
[ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
3030
[ WHERE <replaceable class="parameter">predicate</replaceable> ]
3131
</synopsis>
@@ -349,7 +349,7 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
349349
</varlistentry>
350350

351351
<varlistentry>
352-
<term><replaceable class="parameter">storage_parameter</replaceable></term>
352+
<term><replaceable class="parameter">index_storage_parameter</replaceable></term>
353353
<listitem>
354354
<para>
355355
The name of an index-method-specific storage parameter. See
@@ -385,6 +385,10 @@ CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ [ IF NOT EXISTS ] <replaceable class=
385385
<refsect2 id="sql-createindex-storage-parameters" xreflabel="Index Storage Parameters">
386386
<title>Index Storage Parameters</title>
387387

388+
<indexterm zone="sql-createindex-storage-parameters">
389+
<primary>storage parameters</primary>
390+
</indexterm>
391+
388392
<para>
389393
The optional <literal>WITH</literal> clause specifies <firstterm>storage
390394
parameters</firstterm> for the index. Each index method has its own set

doc/src/sgml/ref/create_table.sgml

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ CREATE [ <replaceable>persistence_mode</replaceable> ] TABLE [ IF NOT EXISTS ] <
3030
[ INHERITS ( <replaceable>parent_table</replaceable> [, ... ] ) ]
3131
[ PARTITION BY { RANGE | LIST | HASH } ( { <replaceable class="parameter">column_name</replaceable> | ( <replaceable class="parameter">expression</replaceable> ) } [ COLLATE <replaceable class="parameter">collation</replaceable> ] [ <replaceable class="parameter">opclass</replaceable> ] [, ... ] ) ]
3232
[ USING <replaceable class="parameter">method</replaceable> ]
33-
[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ]
33+
[ WITH ( <replaceable class="parameter">table_storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ]
3434
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
3535
[ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
3636

@@ -42,7 +42,7 @@ CREATE [ <replaceable>persistence_mode</replaceable> ] TABLE [ IF NOT EXISTS ] <
4242
) ]
4343
[ PARTITION BY { RANGE | LIST | HASH } ( { <replaceable class="parameter">column_name</replaceable> | ( <replaceable class="parameter">expression</replaceable> ) } [ COLLATE <replaceable class="parameter">collation</replaceable> ] [ <replaceable class="parameter">opclass</replaceable> ] [, ... ] ) ]
4444
[ USING <replaceable class="parameter">method</replaceable> ]
45-
[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ]
45+
[ WITH ( <replaceable class="parameter">table_storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ]
4646
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
4747
[ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
4848

@@ -54,7 +54,7 @@ CREATE [ <replaceable>persistence_mode</replaceable> ] TABLE [ IF NOT EXISTS ] <
5454
) ] { FOR VALUES <replaceable class="parameter">partition_bound_spec</replaceable> | DEFAULT }
5555
[ PARTITION BY { RANGE | LIST | HASH } ( { <replaceable class="parameter">column_name</replaceable> | ( <replaceable class="parameter">expression</replaceable> ) } [ COLLATE <replaceable class="parameter">collation</replaceable> ] [ <replaceable class="parameter">opclass</replaceable> ] [, ... ] ) ]
5656
[ USING <replaceable class="parameter">method</replaceable> ]
57-
[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ]
57+
[ WITH ( <replaceable class="parameter">table_storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ]
5858
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
5959
[ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
6060

@@ -112,7 +112,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
112112
<phrase>and <replaceable class="parameter">index_parameters</replaceable> in <literal>UNIQUE</literal>, <literal>PRIMARY KEY</literal>, and <literal>EXCLUDE</literal> constraints are:</phrase>
113113

114114
[ INCLUDE ( <replaceable class="parameter">column_name</replaceable> [, ... ] ) ]
115-
[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) ]
115+
[ WITH ( <replaceable class="parameter">index_storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) ]
116116
[ USING INDEX TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
117117

118118
<phrase>and <replaceable class="parameter">exclude_element</replaceable> in an <literal>EXCLUDE</literal> constraint is:</phrase>
@@ -1471,12 +1471,17 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
14711471
</varlistentry>
14721472

14731473
<varlistentry id="sql-createtable-parms-with">
1474-
<term><literal>WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] )</literal></term>
1474+
<term><literal>WITH ( <replaceable class="parameter">table_storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] )</literal></term>
1475+
<term><literal>WITH ( <replaceable class="parameter">index_storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] )</literal></term>
14751476
<listitem>
14761477
<para>
1477-
This clause specifies optional storage parameters for a table or index;
1478+
These clauses specify optional storage parameters for tables and indexes respectively;
14781479
see <xref linkend="sql-createtable-storage-parameters"/> below for more
1479-
information. For backward-compatibility the <literal>WITH</literal>
1480+
information on table storage parameters. For index storage parameters
1481+
see <xref linkend="sql-createindex-storage-parameters"/>.
1482+
</para>
1483+
<para>
1484+
For backward-compatibility the <literal>WITH</literal>
14801485
clause for a table can also include <literal>OIDS=FALSE</literal> to
14811486
specify that rows of the new table should not contain OIDs (object
14821487
identifiers), <literal>OIDS=TRUE</literal> is not supported anymore.
@@ -1575,8 +1580,8 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
15751580

15761581
</variablelist>
15771582

1578-
<refsect2 id="sql-createtable-storage-parameters" xreflabel="Storage Parameters">
1579-
<title>Storage Parameters</title>
1583+
<refsect2 id="sql-createtable-storage-parameters" xreflabel="Table Storage Parameters">
1584+
<title>Table Storage Parameters</title>
15801585

15811586
<indexterm zone="sql-createtable-storage-parameters">
15821587
<primary>storage parameters</primary>
@@ -1587,7 +1592,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
15871592
for tables, and for indexes associated with a <literal>UNIQUE</literal>,
15881593
<literal>PRIMARY KEY</literal>, or <literal>EXCLUDE</literal> constraint.
15891594
Storage parameters for
1590-
indexes are documented in <xref linkend="sql-createindex"/>.
1595+
indexes are documented in <xref linkend="sql-createindex-storage-parameters"/>
15911596
The storage parameters currently
15921597
available for tables are listed below. For many of these parameters, as
15931598
shown, there is an additional parameter with the same name prefixed with

0 commit comments

Comments
 (0)