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 byte)、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
,則資料表將建立為共享的。資料表的列型別 OID (pg_type
OID) 可以選擇性地透過 rowtype_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
填寫先前宣告的索引。
如果您在文件中發現任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用此表單回報文件問題。