create tablename tableoid [bootstrap] [shared_relation] [rowtype_oid oid] (name1 = type1 [FORCE NOT NULL | FORCE NULL ] [, name2 = type2 [FORCE NOT NULL | FORCE NULL ], ...])创建一个名为 tablename 的表,其 OID 为 tableoid,列在括号中给出。
bootstrap.c 直接支持以下列类型:bool、bytea、char(1 字节)、name、int2、int4、regproc、regclass、regtype、text、oid、tid、xid、cid、int2vector、oidvector、_int4(数组)、_text(数组)、_oid(数组)、_char(数组)、_aclitem(数组)。虽然可以创建包含其他类型列的表,但在创建 pg_type 并填充适当的条目之前,不能这样做。(这实际上意味着只有这些列类型才能在引导目录中使用,但非引导目录可以包含任何内置类型。)
如果指定 bootstrap,则表将仅在磁盘上创建;不会在 pg_class、pg_attribute 等中输入任何内容。因此,在以硬方式(使用 insert 命令)制作此类条目之前,普通 SQL 操作无法访问该表。此选项用于创建 pg_class 等本身。
如果指定 shared_relation,则将该表创建为共享表。可以通过 rowtype_oid 子句选择性地指定表的行类型 OID(pg_type OID);如果未指定,则会自动为其生成一个 OID。(如果指定 bootstrap,则 rowtype_oid 子句无用,但仍然可以提供以供文档使用。)
open tablename打开名为 tablename 的表以插入数据。任何当前打开的表都将被关闭。
close tablename关闭打开的表。必须给出表名以进行交叉检查。
insert ( [oid_value] value1 value2 ... )使用 value1、value2 等作为其列值,将新行插入到打开的表中。
可以使用特殊关键字 _null_ 指定 NULL 值。看起来不像标识符或数字字符串的值必须用单引号引起来。(要在值中包含单引号,请将其写两次。字符串中也允许使用转义字符串风格的反斜杠转义。)
declare [unique] index indexname indexoid on tablename using amname ( opclass1 name1 [, ...] )在名为 tablename 的表上,使用 amname 访问方法,创建一个名为 indexname、OID 为 indexoid 的索引。要索引的字段称为 name1、name2 等,要使用的运算符类分别为 opclass1、opclass2 等。创建索引文件并为其创建适当的目录条目,但此命令不会初始化索引内容。
declare toast toasttableoid toastindexoid on tablename为名为 tablename 的表创建 TOAST 表。TOAST 表被分配 OID toasttableoid,其索引被分配 OID toastindexoid。与 declare index 一样,索引的填充将被推迟。
build indices填充先前声明的索引。
如果您在文档中看到任何不正确、与您使用特定功能的经验不符或需要进一步澄清的内容,请使用此表单来报告文档问题。