記錄在此,備查。
\d [ table ]
列出數(shù)據(jù)庫中的表,或(如果聲明了)表 table 的列/字段.如果表名是用統(tǒng)配符 (“”)聲明的,列出所有表和表的列/字段信息.
\da
列出所有可用聚集.
\dd object
列出 pg_description 里對聲明的對象的描述,對象可以是一個(gè)表,表中的列/字段,類型,操作符或聚集.
小技巧:并非所有對象在 pg_description 里有描述.此后期命令在快速獲取 Postgres 內(nèi)部特性時(shí)很有用.
\df
列出函數(shù).
\di
只列出索引.
\do
只列出操作符.
\ds
只列出序列.
\dS
列出系統(tǒng)表和索引.
\dt
只列出非系統(tǒng)表.
\dT
列出類型.
\e [ filename ]
編輯當(dāng)前查詢緩沖或文件 filename 的內(nèi)容.
\E [ filename ]
編輯當(dāng)前查詢緩沖或文件 filename 的內(nèi)容并且在編輯結(jié)束后執(zhí)行之.
\f [ separator ]
設(shè)置域分隔符.缺省是單個(gè)空白.
\g [ { filename | |command } ]
將當(dāng)前查詢輸入緩沖送給后端并且(可選的)將輸出放到 filename 或通過管道將輸出送給一個(gè)分離的Unix shell 用以執(zhí)行 command.
\h [ command ]
給出聲明的 SQL 命令的語法幫助.如果 command 不是一個(gè)定義的 SQL 命令(或在 psql 里沒有文檔),或沒有聲明 command ,這時(shí) psql將列出可獲得幫助的所有命令的列表.如果命令 command 是一個(gè)通配符(“”),則給出所有 SQL 命令的語法幫助.
\H
切換 HTML3 輸出.等效于 -H 命令行選項(xiàng).
\i filename
從文件 filename 中讀取查詢到輸入緩沖.
\l
列出服務(wù)器上所有數(shù)據(jù)庫.
\m
切換老式監(jiān)視器樣的表輸出,這時(shí)表周圍有邊界字符包圍著.這是標(biāo)準(zhǔn) SQL 輸出.缺省時(shí),psql 只包括列/字段間的分隔符.
\o [ { filename | |command } ]
將后面的查詢結(jié)果輸出到文件 filename 或通過管道將后面結(jié)果輸出到一個(gè)獨(dú)立的Unix shell 里執(zhí)行 command.如果沒有聲明參數(shù),將查詢結(jié)果輸出到stdout.
\p
打印當(dāng)前查詢緩沖區(qū).
\q
退出 psql 程序.
\r
重置(清空)查詢緩沖區(qū).
\s [ filename ]
將命令行歷史打印出或是存放到 filename.如果省略 filename ,將不會(huì)把后繼的命令存放到歷史文件中.此選項(xiàng)只有在 psql 配置成使用輸入行時(shí)才有效.
\t
切換輸出的列/字段名的信息頭和行記數(shù)腳注(缺省是開).
\T table_options
允許你在使用HTML 3.0 格式輸出時(shí)聲明放在表 table ... 中的標(biāo)記選項(xiàng).例如,border 將給你的表以邊框.這必須和 \H 后期命令一起使用.
\x
切換擴(kuò)展行格式.當(dāng)打開時(shí),每一行將在左邊打印列/字段名而在右邊打印列/字段值.這對于那些不能在一行輸出的超長行是很有用的.HTML 行輸出模式也支持這個(gè)標(biāo)記.
\w filename
將當(dāng)前查詢緩沖區(qū)輸出到文件 filename.
\z
生成一個(gè)帶有正確 ACL(賦予/禁止 權(quán)限)的數(shù)據(jù)庫中所有表的輸出列表.
! [ command ]
回到一個(gè)獨(dú)立的Unix shell或執(zhí)行一個(gè)Unix 命令 command.
?
獲得關(guān)于反斜杠 (“\”) 命令的幫助.
一般選項(xiàng)
\c[onnect] [數(shù)據(jù)庫名|- [用戶名稱]]
聯(lián)接到新的數(shù)據(jù)庫 (當(dāng)前為 "test")
\cd [目錄名] 改變當(dāng)前的工作目錄
\copyright 顯示 PostgreSQL 用法和發(fā)布信息
\encoding [編碼]
顯示或設(shè)置客戶端編碼
\h [名字] SQL 命令的語法幫助, 用 * 可以看所有命令的幫助
\q 退出 psql
\set [名字 [值]]
設(shè)置內(nèi)部變量, 如果沒有參數(shù)就列出所有
<b>\timing 查詢計(jì)時(shí)開關(guān)切換 (目前是 關(guān)閉)</b>
\unset 名字 取消(刪除)內(nèi)部變量
! [命令] 在 shell 里執(zhí)行命令或者開始一個(gè)交互的 shell
信息選項(xiàng)
\d [名字] 描述表, 索引, 序列, 或者視圖
\d{t|i|s|v|S} [模式] (加 "+" 獲取更多信息)
列出表/索引/序列/視圖/系統(tǒng)表
\da [模式] 列出聚集函數(shù)
\db [模式] 列出表空間 (加 "+" 獲取更多的信息)
\dc [模式] 列出編碼轉(zhuǎn)換
\dC 列出類型轉(zhuǎn)換
\dd [模式] 顯示目標(biāo)的注釋
\dD [模式] 列出域
\df [模式] 列出函數(shù) (加 "+" 獲取更多的信息)
\dg [模式] 列出組
\dn [模式] 列出模式 (加 "+" 獲取更多的信息)
\do [名字] 列出操作符
\dl 列出大對象, 和 \lo_list 一樣
\dp [模式] 列出表, 視圖, 序列的訪問權(quán)限
\dT [模式] 列出數(shù)據(jù)類型 (加 "+" 獲取更多的信息)
\du [模式] 列出用戶
\l 列出所有數(shù)據(jù)庫 (加 "+" 獲取更多的信息)
\z [模式] 列出表, 視圖, 序列的訪問權(quán)限 (和 \dp 一樣)
命令: ABORT
描述: 終止當(dāng)前事務(wù)
語法:
ABORT [ WORK | TRANSACTION ]
命令: ALTER DATABASE
描述: 改變一個(gè)數(shù)據(jù)庫
語法:
ALTER DATABASE 名字 SET 參數(shù) { TO | = } { 值 | DEFAULT }
ALTER DATABASE 名字 RESET 參數(shù)
ALTER DATABASE 名字 RENAME TO 新名字
ALTER DATABASE 名字 OWNER TO 新屬主
命令: ALTER GROUP
描述: 改變一個(gè)用戶組
語法:
ALTER GROUP 組名稱 ADD USER 用戶名稱 [, ... ]
ALTER GROUP 組名稱 DROP USER 用戶名稱 [, ... ]
ALTER GROUP 組名稱 RENAME TO 新名稱
命令: ALTER INDEX
描述: 改變一個(gè)索引的定義
語法:
ALTER INDEX 索引名稱
動(dòng)作 [, ... ]
ALTER INDEX 索引舊名稱
RENAME TO 索引新名稱
動(dòng)作為以下之一:
OWNER TO 新屬主
SET TABLESPACE indexspace_name
命令: ALTER SEQUENCE
描述: 改變一個(gè)序列生成器的定義
語法:
ALTER SEQUENCE 名字 [ INCREMENT [ BY ] 遞增 ]
[ MINVALUE 最小值 | NO MINVALUE ] [ MAXVALUE 最大值 | NO MAXVALUE ]
[ RESTART [ WITH ] 開始 ] [ CACHE 緩存 ] [ [ NO ] CYCLE ]
命令: ALTER TABLE
描述: 改變一個(gè)表的定義
語法:
ALTER TABLE [ ONLY ] 表名 [ * ]
action [, ... ]
ALTER TABLE [ ONLY ] 表名 [ * ]
RENAME [ COLUMN ] 字段名 TO 新字段名
ALTER TABLE 表名
RENAME TO 新表名
action 為下面的一種:
ADD [ COLUMN ] 字段名 類型 [ 字段約束 [ ... ] ]
DROP [ COLUMN ] 字段名 [ RESTRICT | CASCADE ]
ALTER [ COLUMN ] 字段名 TYPE 類型 [ USING 表達(dá)式 ]
ALTER [ COLUMN ] 字段名 SET DEFAULT 表達(dá)式
ALTER [ COLUMN ] 字段名 DROP DEFAULT
ALTER [ COLUMN ] 字段名 { SET | DROP } NOT NULL
ALTER [ COLUMN ] 字段名 SET STATISTICS integer
ALTER [ COLUMN ] 字段名 SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN }
ADD 表約束
DROP CONSTRAINT 約束名字 [ RESTRICT | CASCADE ]
CLUSTER ON 索引名稱
SET WITHOUT CLUSTER
SET WITHOUT OIDS
OWNER TO 新屬主
SET TABLESPACE 表空間名字
命令: ALTER TRIGGER
描述: 改變一個(gè)觸發(fā)器的定義
語法:
ALTER TRIGGER 名字 ON 表 RENAME TO 新名字
命令: ALTER USER
描述: 改變一個(gè)數(shù)據(jù)庫用戶
語法:
ALTER USER name [ [ WITH ] option [ ... ] ]
where option can be:
CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| VALID UNTIL 'abstime'
ALTER USER name RENAME TO newname
ALTER USER name SET parameter { TO | = } { value | DEFAULT }
命令: COPY
描述: 在一個(gè)文件和一個(gè)表之間拷貝數(shù)據(jù)
語法:
COPY 表名 [ ( 字段 [, ...] ) ]
FROM { '文件名' | STDIN }
[ [ WITH ]
[ BINARY ]
[ OIDS ]
[ DELIMITER [ AS ] 'delimiter' ]
[ NULL [ AS ] 'null string' ]
[ CSV [ QUOTE [ AS ] 'quote' ]
[ ESCAPE [ AS ] 'escape' ]
[ FORCE NOT NULL column [, ...] ]
COPY 表名 [ ( 字段 [, ...] ) ]
TO { '文件名' | STDOUT }
[ [ WITH ]
[ BINARY ]
[ OIDS ]
[ DELIMITER [ AS ] 'delimiter' ]
[ NULL [ AS ] 'null string' ]
[ CSV [ QUOTE [ AS ] 'quote' ]
[ ESCAPE [ AS ] 'escape' ]
[ FORCE QUOTE column [, ...] ]
命令: CREATE TABLE
描述: 定義一個(gè)新的表
語法:
CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name (
{ column_name data_type [ DEFAULT default_expr ] [ column_constraint [ ... ] ]
| table_constraint
| LIKE parent_table [ { INCLUDING | EXCLUDING } DEFAULTS ] } [, ... ]
)
[ INHERITS ( parent_table [, ... ] ) ]
[ WITH OIDS | WITHOUT OIDS ]
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
[ TABLESPACE tablespace ]
where column_constraint is:
[ CONSTRAINT constraint_name ]
{ NOT NULL |
NULL |
UNIQUE [ USING INDEX TABLESPACE tablespace ] |
PRIMARY KEY [ USING INDEX TABLESPACE tablespace ] |
CHECK (expression) |
REFERENCES reftable [ ( refcolumn ) ] [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
[ ON DELETE action ] [ ON UPDATE action ] }
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
and table_constraint is:
[ CONSTRAINT constraint_name ]
{ UNIQUE ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
PRIMARY KEY ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
CHECK ( expression ) |
FOREIGN KEY ( column_name [, ... ] ) REFERENCES reftable [ ( refcolumn [, ... ] ) ]
[ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE action ] [ ON UPDATE action ] }
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]