67.2. BKI Commands
type1[FORCE NOT NULL | FORCE NULL ] [,
type2[FORCE NOT NULL | FORCE NULL ], ...])
Create a table named
tablename, and having the OID
tableoid, with the columns given in parentheses.
The following column types are supported directly by
_aclitem(array). Although it is possible to create tables containing columns of other types, this cannot be done until after
pg_typehas been created and filled with appropriate entries. (That effectively means that only these column types can be used in bootstrapped tables, but non-bootstrap catalogs can contain any built-in type.)
bootstrapis specified, the table will only be created on disk; nothing is entered into
pg_attribute, etc, for it. Thus the table will not be accessible by ordinary SQL operations until such entries are made the hard way (with
insertcommands). This option is used for creating
The table is created as shared if
shared_relationis specified. It will have OIDs unless
without_oidsis specified. The table's row type OID (
pg_typeOID) can optionally be specified via the
rowtype_oidclause; if not specified, an OID is automatically generated for it. (The
rowtype_oidclause is useless if
bootstrapis specified, but it can be provided anyway for documentation.)
Open the table named
tablenamefor insertion of data. Any currently open table is closed.
Close the open table. The name of the table can be given as a cross-check, but this is not required.
Insert a new row into the open table using
value2, etc., for its column values and
oid_valuefor its OID. If
oid_valueis zero (0) or the clause is omitted, and the table has OIDs, then the next available OID is assigned.
NULL values can be specified using the special key word
_null_. Values containing spaces must be double quoted.
Create an index named
indexname, having OID
indexoid, on the table named
tablename, using the
amnameaccess method. The fields to index are called
name2etc., and the operator classes to use are
opclass2etc., respectively. The index file is created and appropriate catalog entries are made for it, but the index contents are not initialized by this command.
Create a TOAST table for the table named
tablename. The TOAST table is assigned OID
toasttableoidand its index is assigned OID
toastindexoid. As with
declare index, filling of the index is postponed.
Fill in the indices that have previously been declared.