50.2. BKI命令

open tablename

打開一個名為 tablename 的資料表,準備進一步操作。

close [tablename]

關閉名為 tablename。 的資料表。如果 tablename 還沒有打開,則產生一個錯誤。如果沒有給出 tablename,那麼目前打開的資料表被關閉。

create [bootstrap] [shared_relation] [without_oids] tablename (name1 = type1 [, name2 = type2, ...])

建立一個叫做 tablename 的資料表,資料表字串在圓括弧中給出。

The following column types are supported directly by bootstrap.c 直接支援下列字串類型: boolbyteachar (1 字元), nameint2int4regprocregclassregtypetextoidtidxidcidint2vectoroidvector_int4 (數組),_text (數組), _aclitem(數組)。儘管我們可以建立包含其它類型字串的資料表, 但是我們只有在建立完 pg_type 並且填充了合適的記錄之後才行。

如果聲明了 bootstrap,那麼改資料表將只在磁盤上建立; 不會向 pg_classpg_attribute 等系統資料表裡面輸入任何東西。 因此這樣的資料表將無法被普通的 SQL 操作訪問,直到那些記錄用硬辦法(用 insert 命令)填入。 這個選項用於建立 pg_class 等自身。

如果聲明了 shared_relation,那麼資料表就作為共享資料表建立。 除非聲明了 without_oids,否則將會有 OID。

insert [OID = oid_value] (value1 value2 ...)

value1value2, 等作為字串值以及 oid_value 作為其 OID(對像標識)向打開的資料表插入一條新記錄,如果 oid_value 為零(0)或省略了改子句,那麼使用下一個 OID。

NULL 可以用特殊的關鍵字 _null_聲明。包含空白的值必須用雙引號栝起。

declare [unique] index indexname on tablename using amname (opclass1 name1 [, ...])

在一個叫 tablename 的資料表上用 amname 訪問方法建立一個叫做 indexname 的索引。 索引的字串叫 name1name2 等,而使用的操作符資料表分別是 opclass1opclass2 等。 將會建立索引文件和恰當的系統資料表記錄,但是索引內容不會被此命令初始化。

製作索引

填充前面聲明的索引。