@@ -21,8 +21,8 @@ PostgreSQL documentation
21
21
22
22
<refsynopsisdiv>
23
23
<synopsis>
24
- CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXISTS ] <replaceable class="parameter">table_name</replaceable> ( [
25
- { <replaceable class="parameter">column_name</replaceable> <replaceable class="parameter">data_type</replaceable> [ STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT } ] [ COMPRESSION <replaceable>compression_method </replaceable> ] [ COLLATE <replaceable>collation</replaceable> ] [ <replaceable class="parameter">column_constraint</replaceable> [ ... ] ]
24
+ CREATE [ <replaceable>persistence_mode</replaceable> ] TABLE [ IF NOT EXISTS ] <replaceable class="parameter">table_name</replaceable> ( [
25
+ { <replaceable class="parameter">column_name</replaceable> <replaceable class="parameter">data_type</replaceable> [ <replaceable>oversize_storage </replaceable> ] [ COLLATE <replaceable>collation</replaceable> ] [ <replaceable class="parameter">column_constraint</replaceable> [ ... ] ]
26
26
| <replaceable>table_constraint</replaceable>
27
27
| LIKE <replaceable>source_table</replaceable> [ <replaceable>like_option</replaceable> ... ] }
28
28
[, ... ]
@@ -34,7 +34,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
34
34
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
35
35
[ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
36
36
37
- CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXISTS ] <replaceable class="parameter">table_name</replaceable>
37
+ CREATE [ <replaceable>persistence_mode</replaceable> ] TABLE [ IF NOT EXISTS ] <replaceable class="parameter">table_name</replaceable>
38
38
OF <replaceable class="parameter">type_name</replaceable> [ (
39
39
{ <replaceable class="parameter">column_name</replaceable> [ WITH OPTIONS ] [ <replaceable class="parameter">column_constraint</replaceable> [ ... ] ]
40
40
| <replaceable>table_constraint</replaceable> }
@@ -46,7 +46,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
46
46
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
47
47
[ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
48
48
49
- CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXISTS ] <replaceable class="parameter">table_name</replaceable>
49
+ CREATE [ <replaceable>persistence_mode</replaceable> ] TABLE [ IF NOT EXISTS ] <replaceable class="parameter">table_name</replaceable>
50
50
PARTITION OF <replaceable class="parameter">parent_table</replaceable> [ (
51
51
{ <replaceable class="parameter">column_name</replaceable> [ WITH OPTIONS ] [ <replaceable class="parameter">column_constraint</replaceable> [ ... ] ]
52
52
| <replaceable>table_constraint</replaceable> }
@@ -58,7 +58,16 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
58
58
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
59
59
[ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ]
60
60
61
- <phrase>where <replaceable class="parameter">column_constraint</replaceable> is:</phrase>
61
+ <phrase>where <replaceable>persistence_mode</replaceable> is: </phrase>
62
+
63
+ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } |
64
+ UNLOGGED
65
+
66
+ <phrase>and <replaceable>oversize_storage</replaceable> is:</phrase>
67
+
68
+ STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT } [ COMPRESSION <replaceable>compression_method</replaceable> ]
69
+
70
+ <phrase>and <replaceable class="parameter">column_constraint</replaceable> is:</phrase>
62
71
63
72
[ CONSTRAINT <replaceable class="parameter">constraint_name</replaceable> ]
64
73
{ NOT NULL [ NO INHERIT ] |
@@ -123,6 +132,14 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
123
132
command.
124
133
</para>
125
134
135
+ <para>
136
+ The durability characteristics of a table are governed by its persistence
137
+ mode. If none is specified, the data will be persistent and crash-safe.
138
+ For less stringent requirements and better performance, a table can be
139
+ specified as <link linkend="sql-createtable-temporary">temporary</link>
140
+ or <link linkend="sql-createtable-unlogged">unlogged</link>.
141
+ </para>
142
+
126
143
<para>
127
144
If a schema name is given (for example, <literal>CREATE TABLE
128
145
myschema.mytable ...</literal>) then the table is created in the specified
0 commit comments