diff options
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/bki.sgml | 39 | ||||
-rw-r--r-- | doc/src/sgml/catalogs.sgml | 75 | ||||
-rw-r--r-- | doc/src/sgml/config.sgml | 29 | ||||
-rw-r--r-- | doc/src/sgml/datatype.sgml | 23 | ||||
-rw-r--r-- | doc/src/sgml/ddl.sgml | 58 | ||||
-rw-r--r-- | doc/src/sgml/file-fdw.sgml | 5 | ||||
-rw-r--r-- | doc/src/sgml/plpgsql.sgml | 8 | ||||
-rw-r--r-- | doc/src/sgml/pltcl.sgml | 18 | ||||
-rw-r--r-- | doc/src/sgml/protocol.sgml | 9 | ||||
-rw-r--r-- | doc/src/sgml/ref/alter_foreign_table.sgml | 28 | ||||
-rw-r--r-- | doc/src/sgml/ref/alter_table.sgml | 37 | ||||
-rw-r--r-- | doc/src/sgml/ref/copy.sgml | 32 | ||||
-rw-r--r-- | doc/src/sgml/ref/create_materialized_view.sgml | 5 | ||||
-rw-r--r-- | doc/src/sgml/ref/create_table.sgml | 88 | ||||
-rw-r--r-- | doc/src/sgml/ref/create_table_as.sgml | 35 | ||||
-rw-r--r-- | doc/src/sgml/ref/pg_dump.sgml | 14 | ||||
-rw-r--r-- | doc/src/sgml/ref/select_into.sgml | 7 | ||||
-rw-r--r-- | doc/src/sgml/release-9.1.sgml | 2 | ||||
-rw-r--r-- | doc/src/sgml/release-9.2.sgml | 2 | ||||
-rw-r--r-- | doc/src/sgml/release-9.3.sgml | 2 |
20 files changed, 116 insertions, 400 deletions
diff --git a/doc/src/sgml/bki.sgml b/doc/src/sgml/bki.sgml index 0fb309a1bd9..786abb95d4d 100644 --- a/doc/src/sgml/bki.sgml +++ b/doc/src/sgml/bki.sgml @@ -89,7 +89,7 @@ The <literal>CATALOG</literal> line can also be annotated, with some other BKI property macros described in <filename>genbki.h</filename>, to define other properties of the catalog as a whole, such as whether - it has OIDs (by default, it does). + it is a shared relation. </para> <para> @@ -354,7 +354,7 @@ also needed if the row's OID must be referenced from C code. If neither case applies, the <literal>oid</literal> metadata field can be omitted, in which case the bootstrap code assigns an OID - automatically, or leaves it zero in a catalog that has no OIDs. + automatically. In practice we usually preassign OIDs for all or none of the pre-loaded rows in a given catalog, even if only some of them are actually cross-referenced. @@ -387,15 +387,16 @@ through the catalog headers and <filename>.dat</filename> files to see which ones do not appear. You can also use the <filename>duplicate_oids</filename> script to check for mistakes. - (<filename>genbki.pl</filename> will also detect duplicate OIDs + (<filename>genbki.pl</filename> will assign OIDs for any rows that + didn't get one hand-assigned to them and also detect duplicate OIDs at compile time.) </para> <para> The OID counter starts at 10000 at the beginning of a bootstrap run. - If a catalog row is in a table that requires OIDs, but no OID was - preassigned by an <literal>oid</literal> field, then it will - receive an OID of 10000 or above. + If a row from a source other than <filename>postgres.bki</filename> + is inserted into a table that requires OIDs, then it will receive an + OID of 10000 or above. </para> </sect2> @@ -714,7 +715,6 @@ $ perl rewrite_dat_with_prokind.pl pg_proc.dat <replaceable class="parameter">tableoid</replaceable> <optional><literal>bootstrap</literal></optional> <optional><literal>shared_relation</literal></optional> - <optional><literal>without_oids</literal></optional> <optional><literal>rowtype_oid</literal> <replaceable>oid</replaceable></optional> (<replaceable class="parameter">name1</replaceable> = <replaceable class="parameter">type1</replaceable> @@ -766,7 +766,6 @@ $ perl rewrite_dat_with_prokind.pl pg_proc.dat <para> The table is created as shared if <literal>shared_relation</literal> is specified. - It will have OIDs unless <literal>without_oids</literal> is specified. The table's row type OID (<structname>pg_type</structname> OID) can optionally be specified via the <literal>rowtype_oid</literal> clause; if not specified, an OID is automatically generated for it. (The <literal>rowtype_oid</literal> @@ -805,7 +804,7 @@ $ perl rewrite_dat_with_prokind.pl pg_proc.dat <varlistentry> <term> - <literal>insert</literal> <optional><literal>OID =</literal> <replaceable class="parameter">oid_value</replaceable></optional> <literal>(</literal> <replaceable class="parameter">value1</replaceable> <replaceable class="parameter">value2</replaceable> ... <literal>)</literal> + <literal>insert</literal> <literal>(</literal> <optional><replaceable class="parameter">oid_value</replaceable></optional> <replaceable class="parameter">value1</replaceable> <replaceable class="parameter">value2</replaceable> ... <literal>)</literal> </term> <listitem> @@ -813,11 +812,7 @@ $ perl rewrite_dat_with_prokind.pl pg_proc.dat Insert a new row into the open table using <replaceable class="parameter">value1</replaceable>, <replaceable class="parameter">value2</replaceable>, etc., for its column - values and <replaceable - class="parameter">oid_value</replaceable> for its OID. If - <replaceable class="parameter">oid_value</replaceable> is zero - (0) or the clause is omitted, and the table has OIDs, then the - next available OID is assigned. + values. </para> <para> @@ -985,16 +980,16 @@ $ perl rewrite_dat_with_prokind.pl pg_proc.dat <title>BKI Example</title> <para> - The following sequence of commands will create the - table <literal>test_table</literal> with OID 420, having two columns - <literal>cola</literal> and <literal>colb</literal> of type - <type>int4</type> and <type>text</type>, respectively, and insert - two rows into the table: + The following sequence of commands will create the table + <literal>test_table</literal> with OID 420, having three columns + <literal>oid</literal>, <literal>cola</literal> and <literal>colb</literal> + of type <type>oid</type>, <type>int4</type> and <type>text</type>, + respectively, and insert two rows into the table: <programlisting> -create test_table 420 (cola = int4, colb = text) +create test_table 420 (oid = oid, cola = int4, colb = text) open test_table -insert OID=421 ( 1 "value1" ) -insert OID=422 ( 2 _null_ ) +insert ( 421 1 "value1" ) +insert ( 422 2 _null_ ) close test_table </programlisting> </para> diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml index 8b7f169d50c..c134bca8096 100644 --- a/doc/src/sgml/catalogs.sgml +++ b/doc/src/sgml/catalogs.sgml @@ -693,7 +693,7 @@ <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -836,7 +836,7 @@ <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -926,7 +926,7 @@ <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -1312,7 +1312,7 @@ <row> <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -1538,7 +1538,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -1661,7 +1661,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -1854,15 +1854,6 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l </row> <row> - <entry><structfield>relhasoids</structfield></entry> - <entry><type>bool</type></entry> - <entry></entry> - <entry> - True if we generate an OID for each row of the relation - </entry> - </row> - - <row> <entry><structfield>relhasrules</structfield></entry> <entry><type>bool</type></entry> <entry></entry> @@ -2055,7 +2046,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -2193,7 +2184,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -2460,7 +2451,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -2560,7 +2551,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -2790,7 +2781,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -3188,7 +3179,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -3351,7 +3342,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -3454,7 +3445,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -3553,7 +3544,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -4106,7 +4097,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -4313,7 +4304,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -4373,7 +4364,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -4448,7 +4439,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -4553,7 +4544,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -4710,7 +4701,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -5120,7 +5111,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -5458,7 +5449,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -5734,7 +5725,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -6616,7 +6607,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -6797,7 +6788,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -6940,7 +6931,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -7149,7 +7140,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -7295,7 +7286,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -7378,7 +7369,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -7475,7 +7466,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -7549,7 +7540,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> @@ -8061,7 +8052,7 @@ SCRAM-SHA-256$<replaceable><iteration count></replaceable>:<replaceable>&l <entry><structfield>oid</structfield></entry> <entry><type>oid</type></entry> <entry></entry> - <entry>Row identifier (hidden attribute; must be explicitly selected)</entry> + <entry>Row identifier</entry> </row> <row> diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 5d76862f461..d1dab355590 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -7942,35 +7942,6 @@ dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir' </listitem> </varlistentry> - <varlistentry id="guc-default-with-oids" xreflabel="default_with_oids"> - <term><varname>default_with_oids</varname> (<type>boolean</type>) - <indexterm> - <primary><varname>default_with_oids</varname> configuration parameter</primary> - </indexterm> - </term> - <listitem> - <para> - This controls whether <command>CREATE TABLE</command> and - <command>CREATE TABLE AS</command> include an OID column in - newly-created tables, if neither <literal>WITH OIDS</literal> - nor <literal>WITHOUT OIDS</literal> is specified. It also - determines whether OIDs will be included in tables created by - <command>SELECT INTO</command>. The parameter is <literal>off</literal> - by default; in <productname>PostgreSQL</productname> 8.0 and earlier, it - was <literal>on</literal> by default. - </para> - - <para> - The use of OIDs in user tables is considered deprecated, so - most installations should leave this variable disabled. - Applications that require OIDs for a particular table should - specify <literal>WITH OIDS</literal> when creating the - table. This variable can be enabled for compatibility with old - applications that do not follow this behavior. - </para> - </listitem> - </varlistentry> - <varlistentry id="guc-escape-string-warning" xreflabel="escape_string_warning"> <term><varname>escape_string_warning</varname> (<type>boolean</type>) <indexterm><primary>strings</primary><secondary>escape warning</secondary></indexterm> diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml index 8c38dde8fb8..cae3fa95a89 100644 --- a/doc/src/sgml/datatype.sgml +++ b/doc/src/sgml/datatype.sgml @@ -4497,25 +4497,22 @@ INSERT INTO mytable VALUES(-1); -- fails <para> Object identifiers (OIDs) are used internally by <productname>PostgreSQL</productname> as primary keys for various - system tables. OIDs are not added to user-created tables, unless - <literal>WITH OIDS</literal> is specified when the table is - created, or the <xref linkend="guc-default-with-oids"/> - configuration variable is enabled. Type <type>oid</type> represents - an object identifier. There are also several alias types for - <type>oid</type>: <type>regproc</type>, <type>regprocedure</type>, - <type>regoper</type>, <type>regoperator</type>, <type>regclass</type>, - <type>regtype</type>, <type>regrole</type>, <type>regnamespace</type>, - <type>regconfig</type>, and <type>regdictionary</type>. - <xref linkend="datatype-oid-table"/> shows an overview. + system tables. + + Type <type>oid</type> represents an object identifier. There are also + several alias types for <type>oid</type>: <type>regproc</type>, + <type>regprocedure</type>, <type>regoper</type>, <type>regoperator</type>, + <type>regclass</type>, <type>regtype</type>, <type>regrole</type>, + <type>regnamespace</type>, <type>regconfig</type>, and + <type>regdictionary</type>. <xref linkend="datatype-oid-table"/> shows an + overview. </para> <para> The <type>oid</type> type is currently implemented as an unsigned four-byte integer. Therefore, it is not large enough to provide database-wide uniqueness in large databases, or even in large - individual tables. So, using a user-created table's OID column as - a primary key is discouraged. OIDs are best used only for - references to system tables. + individual tables. </para> <para> diff --git a/doc/src/sgml/ddl.sgml b/doc/src/sgml/ddl.sgml index c8268222af7..61c4a254603 100644 --- a/doc/src/sgml/ddl.sgml +++ b/doc/src/sgml/ddl.sgml @@ -939,24 +939,6 @@ CREATE TABLE circles ( <variablelist> <varlistentry> - <term><structfield>oid</structfield></term> - <listitem> - <para> - <indexterm> - <primary>OID</primary> - <secondary>column</secondary> - </indexterm> - The object identifier (object ID) of a row. This column is only - present if the table was created using <literal>WITH - OIDS</literal>, or if the <xref linkend="guc-default-with-oids"/> - configuration variable was set at the time. This column is of type - <type>oid</type> (same name as the column); see <xref - linkend="datatype-oid"/> for more information about the type. - </para> - </listitem> - </varlistentry> - - <varlistentry> <term><structfield>tableoid</structfield></term> <listitem> <indexterm> @@ -1057,46 +1039,6 @@ CREATE TABLE circles ( </variablelist> <para> - OIDs are 32-bit quantities and are assigned from a single - cluster-wide counter. In a large or long-lived database, it is - possible for the counter to wrap around. Hence, it is bad - practice to assume that OIDs are unique, unless you take steps to - ensure that this is the case. If you need to identify the rows in - a table, using a sequence generator is strongly recommended. - However, OIDs can be used as well, provided that a few additional - precautions are taken: - - <itemizedlist> - <listitem> - <para> - A unique constraint should be created on the OID column of each - table for which the OID will be used to identify rows. When such - a unique constraint (or unique index) exists, the system takes - care not to generate an OID matching an already-existing row. - (Of course, this is only possible if the table contains fewer - than 2<superscript>32</superscript> (4 billion) rows, and in practice the - table size had better be much less than that, or performance - might suffer.) - </para> - </listitem> - <listitem> - <para> - OIDs should never be assumed to be unique across tables; use - the combination of <structfield>tableoid</structfield> and row OID if you - need a database-wide identifier. - </para> - </listitem> - <listitem> - <para> - Of course, the tables in question must be created <literal>WITH - OIDS</literal>. As of <productname>PostgreSQL</productname> 8.1, - <literal>WITHOUT OIDS</literal> is the default. - </para> - </listitem> - </itemizedlist> - </para> - - <para> Transaction identifiers are also 32-bit quantities. In a long-lived database it is possible for transaction IDs to wrap around. This is not a fatal problem given appropriate maintenance diff --git a/doc/src/sgml/file-fdw.sgml b/doc/src/sgml/file-fdw.sgml index 955a13ab7d9..19be824b039 100644 --- a/doc/src/sgml/file-fdw.sgml +++ b/doc/src/sgml/file-fdw.sgml @@ -174,9 +174,8 @@ </variablelist> <para> - <command>COPY</command>'s <literal>OIDS</literal> and - <literal>FORCE_QUOTE</literal> options are currently not supported by - <literal>file_fdw</literal>. + <command>COPY</command>'s <literal>FORCE_QUOTE</literal> options is + currently not supported by <literal>file_fdw</literal>. </para> <para> diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml index beb7e03bbcf..60b0c72ff32 100644 --- a/doc/src/sgml/plpgsql.sgml +++ b/doc/src/sgml/plpgsql.sgml @@ -1486,14 +1486,6 @@ GET DIAGNOSTICS integer_var = ROW_COUNT; recent <acronym>SQL</acronym> command</entry> </row> <row> - <entry><varname>RESULT_OID</varname></entry> - <entry><type>oid</type></entry> - <entry>the OID of the last row inserted by the most - recent <acronym>SQL</acronym> command (only useful after - an <command>INSERT</command> command into a table having - OIDs)</entry> - </row> - <row> <entry><literal>PG_CONTEXT</literal></entry> <entry><type>text</type></entry> <entry>line(s) of text describing the current call stack diff --git a/doc/src/sgml/pltcl.sgml b/doc/src/sgml/pltcl.sgml index 4dd6fe434fa..7ff828de700 100644 --- a/doc/src/sgml/pltcl.sgml +++ b/doc/src/sgml/pltcl.sgml @@ -471,24 +471,6 @@ $$ LANGUAGE pltcl; </varlistentry> <varlistentry> - <term> - <function>spi_lastoid</function> - <indexterm> - <primary>spi_lastoid</primary> - <secondary>in PL/Tcl</secondary> - </indexterm> - </term> - <listitem> - <para> - Returns the OID of the row inserted by the last - <function>spi_exec</function> or <function>spi_execp</function>, if the - command was a single-row <command>INSERT</command> and the modified - table contained OIDs. (If not, you get zero.) - </para> - </listitem> - </varlistentry> - - <varlistentry> <term><function>subtransaction</function> <replaceable>command</replaceable></term> <listitem> <para> diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml index f0b21452084..9f7fb0c1d04 100644 --- a/doc/src/sgml/protocol.sgml +++ b/doc/src/sgml/protocol.sgml @@ -3837,10 +3837,11 @@ CommandComplete (B) <literal>INSERT <replaceable>oid</replaceable> <replaceable>rows</replaceable></literal>, where <replaceable>rows</replaceable> is the number of rows - inserted. <replaceable>oid</replaceable> is the object ID - of the inserted row if <replaceable>rows</replaceable> is 1 - and the target table has OIDs; - otherwise <replaceable>oid</replaceable> is 0. + inserted. <replaceable>oid</replaceable> used to be the object ID + of the inserted row if <replaceable>rows</replaceable> was 1 + and the target table had OIDs, but OIDs system columns are + not supported anymore; therefore <replaceable>oid</replaceable> + is always 0. </para> <para> diff --git a/doc/src/sgml/ref/alter_foreign_table.sgml b/doc/src/sgml/ref/alter_foreign_table.sgml index f266be0c37b..b27eb6f2aae 100644 --- a/doc/src/sgml/ref/alter_foreign_table.sgml +++ b/doc/src/sgml/ref/alter_foreign_table.sgml @@ -50,7 +50,6 @@ ALTER FOREIGN TABLE [ IF EXISTS ] <replaceable class="parameter">name</replaceab ENABLE TRIGGER [ <replaceable class="parameter">trigger_name</replaceable> | ALL | USER ] ENABLE REPLICA TRIGGER <replaceable class="parameter">trigger_name</replaceable> ENABLE ALWAYS TRIGGER <replaceable class="parameter">trigger_name</replaceable> - SET WITH OIDS SET WITHOUT OIDS INHERIT <replaceable class="parameter">parent_table</replaceable> NO INHERIT <replaceable class="parameter">parent_table</replaceable> @@ -224,33 +223,12 @@ ALTER FOREIGN TABLE [ IF EXISTS ] <replaceable class="parameter">name</replaceab </varlistentry> <varlistentry> - <term><literal>SET WITH OIDS</literal></term> - <listitem> - <para> - This form adds an <literal>oid</literal> system column to the - table (see <xref linkend="ddl-system-columns"/>). - It does nothing if the table already has OIDs. - Unless the table's foreign-data wrapper supports OIDs, this column - will simply read as zeroes. - </para> - - <para> - Note that this is not equivalent to <literal>ADD COLUMN oid oid</literal>; - that would add a normal column that happened to be named - <literal>oid</literal>, not a system column. - </para> - </listitem> - </varlistentry> - - <varlistentry> <term><literal>SET WITHOUT OIDS</literal></term> <listitem> <para> - This form removes the <literal>oid</literal> system column from the - table. This is exactly equivalent to - <literal>DROP COLUMN oid RESTRICT</literal>, - except that it will not complain if there is already no - <literal>oid</literal> column. + Backward compatibility syntax for removing the <literal>oid</literal> + system column. As oid system columns cannot be added anymore, this never + has an effect. </para> </listitem> </varlistentry> diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml index f13a6cd944d..be1647937dc 100644 --- a/doc/src/sgml/ref/alter_table.sgml +++ b/doc/src/sgml/ref/alter_table.sgml @@ -72,7 +72,6 @@ ALTER TABLE [ IF EXISTS ] <replaceable class="parameter">name</replaceable> NO FORCE ROW LEVEL SECURITY CLUSTER ON <replaceable class="parameter">index_name</replaceable> SET WITHOUT CLUSTER - SET WITH OIDS SET WITHOUT OIDS SET TABLESPACE <replaceable class="parameter">new_tablespace</replaceable> SET { LOGGED | UNLOGGED } @@ -614,31 +613,12 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM </varlistentry> <varlistentry> - <term><literal>SET WITH OIDS</literal></term> - <listitem> - <para> - This form adds an <literal>oid</literal> system column to the - table (see <xref linkend="ddl-system-columns"/>). - It does nothing if the table already has OIDs. - </para> - - <para> - Note that this is not equivalent to <literal>ADD COLUMN oid oid</literal>; - that would add a normal column that happened to be named - <literal>oid</literal>, not a system column. - </para> - </listitem> - </varlistentry> - - <varlistentry> <term><literal>SET WITHOUT OIDS</literal></term> <listitem> <para> - This form removes the <literal>oid</literal> system column from the - table. This is exactly equivalent to - <literal>DROP COLUMN oid RESTRICT</literal>, - except that it will not complain if there is already no - <literal>oid</literal> column. + Backward compatibility syntax for removing the <literal>oid</literal> + system column. As oid system columns cannot be added anymore, this never + has an effect. </para> </listitem> </varlistentry> @@ -704,17 +684,6 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM <varname>effective_io_concurrency</varname>, <varname>parallel_workers</varname>, <varname>seq_page_cost</varname>, <varname>random_page_cost</varname>, <varname>n_distinct</varname> and <varname>n_distinct_inherited</varname>. </para> - - <note> - <para> - While <command>CREATE TABLE</command> allows <literal>OIDS</literal> to be specified - in the <literal>WITH (<replaceable - class="parameter">storage_parameter</replaceable>)</literal> syntax, - <command>ALTER TABLE</command> does not treat <literal>OIDS</literal> as a - storage parameter. Instead use the <literal>SET WITH OIDS</literal> - and <literal>SET WITHOUT OIDS</literal> forms to change OID status. - </para> - </note> </listitem> </varlistentry> diff --git a/doc/src/sgml/ref/copy.sgml b/doc/src/sgml/ref/copy.sgml index 9f3c85bf7f9..411941ed31f 100644 --- a/doc/src/sgml/ref/copy.sgml +++ b/doc/src/sgml/ref/copy.sgml @@ -33,7 +33,6 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable <phrase>where <replaceable class="parameter">option</replaceable> can be one of:</phrase> FORMAT <replaceable class="parameter">format_name</replaceable> - OIDS [ <replaceable class="parameter">boolean</replaceable> ] FREEZE [ <replaceable class="parameter">boolean</replaceable> ] DELIMITER '<replaceable class="parameter">delimiter_character</replaceable>' NULL '<replaceable class="parameter">null_string</replaceable>' @@ -204,18 +203,6 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable </varlistentry> <varlistentry> - <term><literal>OIDS</literal></term> - <listitem> - <para> - Specifies copying the OID for each row. (An error is raised if - <literal>OIDS</literal> is specified for a table that does not - have OIDs, or in the case of copying a <replaceable - class="parameter">query</replaceable>.) - </para> - </listitem> - </varlistentry> - - <varlistentry> <term><literal>FREEZE</literal></term> <listitem> <para> @@ -549,8 +536,6 @@ COPY <replaceable class="parameter">count</replaceable> place of columns that are null. <command>COPY FROM</command> will raise an error if any line of the input file contains more or fewer columns than are expected. - If <literal>OIDS</literal> is specified, the OID is read or written as the first column, - preceding the user data columns. </para> <para> @@ -824,7 +809,9 @@ only one flag bit is defined, and the rest must be zero: <term>Bit 16</term> <listitem> <para> - if 1, OIDs are included in the data; if 0, not + If 1, OIDs are included in the data; if 0, not. Oid system columns + are not supported in <productname>PostgreSQL</productname> + anymore, but the format still contains the indicator. </para> </listitem> </varlistentry> @@ -895,10 +882,9 @@ distribution). <para> If OIDs are included in the file, the OID field immediately follows the -field-count word. It is a normal field except that it's not included -in the field-count. In particular it has a length word — this will allow -handling of 4-byte vs. 8-byte OIDs without too much pain, and will allow -OIDs to be shown as null if that ever proves desirable. +field-count word. It is a normal field except that it's not included in the +field-count. Note that oid system columns are not supported in current +versions of <productname>PostgreSQL</productname>. </para> </refsect3> @@ -1001,7 +987,6 @@ COPY <replaceable class="parameter">table_name</replaceable> [ ( <replaceable cl FROM { '<replaceable class="parameter">filename</replaceable>' | STDIN } [ [ WITH ] [ BINARY ] - [ OIDS ] [ DELIMITER [ AS ] '<replaceable class="parameter">delimiter</replaceable>' ] [ NULL [ AS ] '<replaceable class="parameter">null string</replaceable>' ] [ CSV [ HEADER ] @@ -1013,7 +998,6 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable TO { '<replaceable class="parameter">filename</replaceable>' | STDOUT } [ [ WITH ] [ BINARY ] - [ OIDS ] [ DELIMITER [ AS ] '<replaceable class="parameter">delimiter</replaceable>' ] [ NULL [ AS ] '<replaceable class="parameter">null string</replaceable>' ] [ CSV [ HEADER ] @@ -1032,12 +1016,12 @@ COPY { <replaceable class="parameter">table_name</replaceable> [ ( <replaceable version 7.3 and is still supported: <synopsis> -COPY [ BINARY ] <replaceable class="parameter">table_name</replaceable> [ WITH OIDS ] +COPY [ BINARY ] <replaceable class="parameter">table_name</replaceable> FROM { '<replaceable class="parameter">filename</replaceable>' | STDIN } [ [USING] DELIMITERS '<replaceable class="parameter">delimiter</replaceable>' ] [ WITH NULL AS '<replaceable class="parameter">null string</replaceable>' ] -COPY [ BINARY ] <replaceable class="parameter">table_name</replaceable> [ WITH OIDS ] +COPY [ BINARY ] <replaceable class="parameter">table_name</replaceable> TO { '<replaceable class="parameter">filename</replaceable>' | STDOUT } [ [USING] DELIMITERS '<replaceable class="parameter">delimiter</replaceable>' ] [ WITH NULL AS '<replaceable class="parameter">null string</replaceable>' ] diff --git a/doc/src/sgml/ref/create_materialized_view.sgml b/doc/src/sgml/ref/create_materialized_view.sgml index eed4273c4b4..7f31ab4d26d 100644 --- a/doc/src/sgml/ref/create_materialized_view.sgml +++ b/doc/src/sgml/ref/create_materialized_view.sgml @@ -45,8 +45,7 @@ CREATE MATERIALIZED VIEW [ IF NOT EXISTS ] <replaceable>table_name</replaceable> <command>CREATE TABLE AS</command>, except that it also remembers the query used to initialize the view, so that it can be refreshed later upon demand. A materialized view has many of the same properties as a table, but there - is no support for temporary materialized views or automatic generation of - OIDs. + is no support for temporary materialized views. </para> </refsect1> @@ -95,7 +94,7 @@ CREATE MATERIALIZED VIEW [ IF NOT EXISTS ] <replaceable>table_name</replaceable> endterm="sql-createtable-storage-parameters-title"/> for more information. All parameters supported for <literal>CREATE TABLE</literal> are also supported for <literal>CREATE MATERIALIZED - VIEW</literal> with the exception of <literal>OIDS</literal>. + VIEW</literal>. See <xref linkend="sql-createtable"/> for more information. </para> </listitem> diff --git a/doc/src/sgml/ref/create_table.sgml b/doc/src/sgml/ref/create_table.sgml index 4b9c8a78017..50d55970020 100644 --- a/doc/src/sgml/ref/create_table.sgml +++ b/doc/src/sgml/ref/create_table.sgml @@ -29,7 +29,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI ] ) [ INHERITS ( <replaceable>parent_table</replaceable> [, ... ] ) ] [ 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> ] [, ... ] ) ] -[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITH OIDS | WITHOUT OIDS ] +[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ] [ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ] [ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ] @@ -40,7 +40,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI [, ... ] ) ] [ 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> ] [, ... ] ) ] -[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITH OIDS | WITHOUT OIDS ] +[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ] [ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ] [ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ] @@ -51,7 +51,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI [, ... ] ) ] { FOR VALUES <replaceable class="parameter">partition_bound_spec</replaceable> | DEFAULT } [ 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> ] [, ... ] ) ] -[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITH OIDS | WITHOUT OIDS ] +[ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ] [ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ] [ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ] @@ -531,17 +531,13 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM <para> A partition must have the same column names and types as the partitioned - table to which it belongs. If the parent is specified <literal>WITH - OIDS</literal> then all partitions must have OIDs; the parent's OID - column will be inherited by all partitions just like any other column. - Modifications to the column names or types of a partitioned table, or - the addition or removal of an OID column, will automatically propagate - to all partitions. <literal>CHECK</literal> constraints will be inherited - automatically by every partition, but an individual partition may specify - additional <literal>CHECK</literal> constraints; additional constraints with - the same name and condition as in the parent will be merged with the - parent constraint. Defaults may be specified separately for each - partition. + table to which it belongs. Modifications to the column names or types of + a partitioned table will automatically propagate to all partitions. + <literal>CHECK</literal> constraints will be inherited automatically by + every partition, but an individual partition may specify additional + <literal>CHECK</literal> constraints; additional constraints with the + same name and condition as in the parent will be merged with the parent + constraint. Defaults may be specified separately for each partition. </para> <para> @@ -1145,46 +1141,21 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM This clause specifies optional storage parameters for a table or index; see <xref linkend="sql-createtable-storage-parameters" endterm="sql-createtable-storage-parameters-title"/> for more - information. The <literal>WITH</literal> clause for a - table can also include <literal>OIDS=TRUE</literal> (or just <literal>OIDS</literal>) - to specify that rows of the new table - should have OIDs (object identifiers) assigned to them, or - <literal>OIDS=FALSE</literal> to specify that the rows should not have OIDs. - If <literal>OIDS</literal> is not specified, the default setting depends upon - the <xref linkend="guc-default-with-oids"/> configuration parameter. - (If the new table inherits from any tables that have OIDs, then - <literal>OIDS=TRUE</literal> is forced even if the command says - <literal>OIDS=FALSE</literal>.) - </para> - - <para> - If <literal>OIDS=FALSE</literal> is specified or implied, the new - table does not store OIDs and no OID will be assigned for a row inserted - into it. This is generally considered worthwhile, since it - will reduce OID consumption and thereby postpone the wraparound - of the 32-bit OID counter. Once the counter wraps around, OIDs - can no longer be assumed to be unique, which makes them - considerably less useful. In addition, excluding OIDs from a - table reduces the space required to store the table on disk by - 4 bytes per row (on most machines), slightly improving performance. - </para> - - <para> - To remove OIDs from a table after it has been created, use <xref - linkend="sql-altertable"/>. + information. For backward-compatibility the <literal>WITH</literal> + clause for a table can also include <literal>OIDS=FALSE</literal> to + specify that rows of the new table should not contain OIDs (object + identifiers), <literal>OIDS=TRUE</literal> is not supported anymore. </para> </listitem> </varlistentry> <varlistentry> - <term><literal>WITH OIDS</literal></term> <term><literal>WITHOUT OIDS</literal></term> <listitem> <para> - These are obsolescent syntaxes equivalent to <literal>WITH (OIDS)</literal> - and <literal>WITH (OIDS=FALSE)</literal>, respectively. If you wish to give - both an <literal>OIDS</literal> setting and storage parameters, you must use - the <literal>WITH ( ... )</literal> syntax; see above. + This is backward-compatible syntax for declaring a table + <literal>WITHOUT OIDS</literal>, creating a table <literal>WITH + OIDS</literal> is not supported anymore. </para> </listitem> </varlistentry> @@ -1528,29 +1499,6 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM <refsect1 id="sql-createtable-notes"> <title>Notes</title> - - <para> - Using OIDs in new applications is not recommended: where - possible, using an identity column or other sequence - generator as the table's primary key is preferred. However, if - your application does make use of OIDs to identify specific - rows of a table, it is recommended to create a unique constraint - on the <structfield>oid</structfield> column of that table, to ensure that - OIDs in the table will indeed uniquely identify rows even after - counter wraparound. Avoid assuming that OIDs are unique across - tables; if you need a database-wide unique identifier, use the - combination of <structfield>tableoid</structfield> and row OID for the - purpose. - </para> - - <tip> - <para> - The use of <literal>OIDS=FALSE</literal> is not recommended - for tables with no primary key, since without either an OID or a - unique data key, it is difficult to identify specific rows. - </para> - </tip> - <para> <productname>PostgreSQL</productname> automatically creates an index for each unique constraint and primary key constraint to @@ -2089,7 +2037,7 @@ CREATE TABLE cities_partdef <para> The <literal>WITH</literal> clause is a <productname>PostgreSQL</productname> - extension; neither storage parameters nor OIDs are in the standard. + extension; storage parameters are not in the standard. </para> </refsect2> diff --git a/doc/src/sgml/ref/create_table_as.sgml b/doc/src/sgml/ref/create_table_as.sgml index 527138e7872..679e8f521ed 100644 --- a/doc/src/sgml/ref/create_table_as.sgml +++ b/doc/src/sgml/ref/create_table_as.sgml @@ -23,7 +23,7 @@ PostgreSQL documentation <synopsis> CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXISTS ] <replaceable>table_name</replaceable> [ (<replaceable>column_name</replaceable> [, ...] ) ] - [ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITH OIDS | WITHOUT OIDS ] + [ WITH ( <replaceable class="parameter">storage_parameter</replaceable> [= <replaceable class="parameter">value</replaceable>] [, ... ] ) | WITHOUT OIDS ] [ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ] [ TABLESPACE <replaceable class="parameter">tablespace_name</replaceable> ] AS <replaceable>query</replaceable> @@ -127,25 +127,22 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI This clause specifies optional storage parameters for the new table; see <xref linkend="sql-createtable-storage-parameters" endterm="sql-createtable-storage-parameters-title"/> for more - information. The <literal>WITH</literal> clause - can also include <literal>OIDS=TRUE</literal> (or just <literal>OIDS</literal>) - to specify that rows of the new table - should have OIDs (object identifiers) assigned to them, or - <literal>OIDS=FALSE</literal> to specify that the rows should not have OIDs. - See <xref linkend="sql-createtable"/> for more information. + information. For backward-compatibility the <literal>WITH</literal> + clause for a table can also include <literal>OIDS=FALSE</literal> to + specify that rows of the new table should contain no OIDs (object + identifiers), <literal>OIDS=TRUE</literal> is not supported anymore. + OIDs. </para> </listitem> </varlistentry> <varlistentry> - <term><literal>WITH OIDS</literal></term> <term><literal>WITHOUT OIDS</literal></term> <listitem> <para> - These are obsolescent syntaxes equivalent to <literal>WITH (OIDS)</literal> - and <literal>WITH (OIDS=FALSE)</literal>, respectively. If you wish to give - both an <literal>OIDS</literal> setting and storage parameters, you must use - the <literal>WITH ( ... )</literal> syntax; see above. + This is backward-compatible syntax for declaring a table + <literal>WITHOUT OIDS</literal>, creating a table <literal>WITH + OIDS</literal> is not supported anymore. </para> </listitem> </varlistentry> @@ -245,14 +242,6 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI TABLE AS</command> offers a superset of the functionality offered by <command>SELECT INTO</command>. </para> - - <para> - The <command>CREATE TABLE AS</command> command allows the user to - explicitly specify whether OIDs should be included. If the - presence of OIDs is not explicitly specified, - the <xref linkend="guc-default-with-oids"/> configuration variable is - used. - </para> </refsect1> <refsect1> @@ -281,12 +270,12 @@ CREATE TABLE films2 AS <para> Create a new temporary table <literal>films_recent</literal>, consisting of only recent entries from the table <literal>films</literal>, using a - prepared statement. The new table has OIDs and will be dropped at commit: + prepared statement. The new table will be dropped at commit: <programlisting> PREPARE recentfilms(date) AS SELECT * FROM films WHERE date_prod > $1; -CREATE TEMP TABLE films_recent WITH (OIDS) ON COMMIT DROP AS +CREATE TEMP TABLE films_recent ON COMMIT DROP AS EXECUTE recentfilms('2002-01-01'); </programlisting></para> </refsect1> @@ -325,7 +314,7 @@ CREATE TEMP TABLE films_recent WITH (OIDS) ON COMMIT DROP AS <listitem> <para> The <literal>WITH</literal> clause is a <productname>PostgreSQL</productname> - extension; neither storage parameters nor OIDs are in the standard. + extension; storage parameters are not in the standard. </para> </listitem> diff --git a/doc/src/sgml/ref/pg_dump.sgml b/doc/src/sgml/ref/pg_dump.sgml index b5fa4fb85cc..2015410a421 100644 --- a/doc/src/sgml/ref/pg_dump.sgml +++ b/doc/src/sgml/ref/pg_dump.sgml @@ -439,20 +439,6 @@ PostgreSQL documentation </varlistentry> <varlistentry> - <term><option>-o</option></term> - <term><option>--oids</option></term> - <listitem> - <para> - Dump object identifiers (<acronym>OID</acronym>s) as part of the - data for every table. Use this option if your application references - the <acronym>OID</acronym> - columns in some way (e.g., in a foreign key constraint). - Otherwise, this option should not be used. - </para> - </listitem> - </varlistentry> - - <varlistentry> <term><option>-O</option></term> <term><option>--no-owner</option></term> <listitem> diff --git a/doc/src/sgml/ref/select_into.sgml b/doc/src/sgml/ref/select_into.sgml index 6c1a25f5ed5..462e3723819 100644 --- a/doc/src/sgml/ref/select_into.sgml +++ b/doc/src/sgml/ref/select_into.sgml @@ -104,13 +104,6 @@ SELECT [ ALL | DISTINCT [ ON ( <replaceable class="parameter">expression</replac <command>CREATE TABLE AS</command> offers a superset of the functionality provided by <command>SELECT INTO</command>. </para> - - <para> - To add OIDs to the table created by <command>SELECT INTO</command>, - enable the <xref linkend="guc-default-with-oids"/> configuration - variable. Alternatively, <command>CREATE TABLE AS</command> can be - used with the <literal>WITH OIDS</literal> clause. - </para> </refsect1> <refsect1> diff --git a/doc/src/sgml/release-9.1.sgml b/doc/src/sgml/release-9.1.sgml index e6ce80032fd..3407d8ad739 100644 --- a/doc/src/sgml/release-9.1.sgml +++ b/doc/src/sgml/release-9.1.sgml @@ -3654,7 +3654,7 @@ Branch: REL9_0_STABLE [9d6af7367] 2015-08-15 11:02:34 -0400 <listitem> <para> Prevent foreign tables from being created with OIDS - when <xref linkend="guc-default-with-oids"/> is true + when <literal>default_with_oids"</literal> is true (Etsuro Fujita) </para> </listitem> diff --git a/doc/src/sgml/release-9.2.sgml b/doc/src/sgml/release-9.2.sgml index 3494ddb5cef..1e5f4e04c33 100644 --- a/doc/src/sgml/release-9.2.sgml +++ b/doc/src/sgml/release-9.2.sgml @@ -5650,7 +5650,7 @@ Branch: REL9_2_STABLE [6b700301c] 2015-02-17 16:03:00 +0100 <listitem> <para> Prevent foreign tables from being created with OIDS - when <xref linkend="guc-default-with-oids"/> is true + when <literal>default_with_oids"</literal> is true (Etsuro Fujita) </para> </listitem> diff --git a/doc/src/sgml/release-9.3.sgml b/doc/src/sgml/release-9.3.sgml index 0c1498015ba..23868d65d8e 100644 --- a/doc/src/sgml/release-9.3.sgml +++ b/doc/src/sgml/release-9.3.sgml @@ -9237,7 +9237,7 @@ Branch: REL9_1_STABLE [dd1a5b09b] 2014-06-24 13:30:41 +0300 <listitem> <para> Prevent foreign tables from being created with OIDS - when <xref linkend="guc-default-with-oids"/> is true + when <literal>default_with_oids"</literal> is true (Etsuro Fujita) </para> </listitem> |