输入: \copyright 获取发布信息
\h 获取 SQL 命令的帮助
\? 获取 psql 命令的帮助
\g 或者以分号作为执行查询的结尾
\q 退出
\?
一般选项
\c[on
联接到新的数据库 (当前为 "test")
\cd [目录名] 改变当前的工作目录
\copyright 显示 PostgreSQL 用法和发布信息
\encoding [编码]
显示或设置客户端编码
\h [名字] SQL 命令的语法帮助, 用 * 可以看所有命令的帮助
\q 退出 psql
\set [名字 [值]]
设置内部变量, 如果没有参数就列出所有
\timing 查询计时开关切换 (目前是 关闭)
\unset 名字 取消(删除)内部变量
\! [命令] 在 shell 里执行命令或者开始一个交互的 shell
查询缓冲区选项
\e [文件名] 用一个外部编辑器编辑当前查询缓冲区或者文件
\g [文件名] 向服务器发送 SQL 命令 (并且把结果写到文件或者 |管道)
\p 显示当前查询缓冲区的内容
\r 重置 (清理) 查询缓冲区
\s [文件名] 打印历史或者将其保存到文件
\w [文件名] 将查询缓冲区写出到文件
输入/输出选项
\echo [字串] 向标准输出写出文本
\i 文件名 执行来自文件的命令
\o [文件名] 向文件或者 |管道 发送所有查询结果
\qecho [字串]
向查询输出流写出文本 (见 \o)
信息选项
\d [名字] 描述表, 索引, 序列, 或者视图
\d{t|i|s|v|S} [模式] (加 "+" 获取更多信息)
列出表/索引/序列/视图/系统表
\da [模式] 列出聚集函数
\db [模式] 列出表空间 (加 "+" 获取更多的信息)
\dc [模式] 列出编码转换
\dC 列出类型转换
\dd [模式] 显示目标的注释
\dD [模式] 列出域
\df [模式] 列出函数 (加 "+" 获取更多的信息)
\dg [模式] 列出组
\dn [模式] 列出模式 (加 "+" 获取更多的信息)
\do [名字] 列出操作符
\dl 列出大对象, 和 \lo_list 一样
\dp [模式] 列出表, 视图, 序列的访问权限
\dT [模式] 列出数据类型 (加 "+" 获取更多的信息)
\du [模式] 列出用户
\l 列出所有数据库 (加 "+" 获取更多的信息)
\z [模式] 列出表, 视图, 序列的访问权限 (和 \dp 一样)
格式选项
\a 在非对齐和对齐的输出模式之间切换
\C [字串] 设置表标题, 如果参数空则取消标题
\f [字串] 为非对齐查询输出显示或设置域分隔符
\H 在 HTML 输出模式之间切换 (当前是 关闭)
\pset 变量 [值]
设置表的输出选项
(变量 := {foramt|border|expanded|fieldsep|null|
recordsep|tuples_on
\t 只显示行 (当前是 关闭)
\T [字串] 设置 HTML <表> 标记属性, 如果没有参数就取消设置
\x 在扩展输出之间切换 (目前是 关闭)
拷贝, 大对象选项
\copy ... 执行 SQL COPY, 数据流指向客户端主机
\lo_export LOBOID FILE
\lo_import FILE [COMMENT]
\lo_list
\lo_unlink LOBOID 大对象操作
SQL帮助:
ABORT CREATE INDEX DROP TYPE
ALTER AGGREGATE CREATE LANGUAGE DROP USER
ALTER CONVERSION CREATE OPERATOR CLASS DROP VIEW
ALTER DATABASE CREATE OPERATOR END
ALTER DOMAIN CREATE RULE EXECUTE
ALTER FUNCTION CREATE SCHEMA EXPLAIN
ALTER GROUP CREATE SEQUENCE FETCH
ALTER INDEX CREATE TABLE GRANT
ALTER LANGUAGE CREATE TABLE AS INSERT
ALTER OPERATOR CLASS CREATE TABLESPACE LISTEN
ALTER OPERATOR CREATE TRIGGER LOAD
ALTER SCHEMA CREATE TYPE LOCK
ALTER SEQUENCE CREATE USER MOVE
ALTER TABLE CREATE VIEW NOTIFY
ALTER TABLESPACE DEALLOCATE PREPARE
ALTER TRIGGER DECLARE REINDEX
ALTER TYPE DELETE RELEASE SAVEPOINT
ALTER USER DROP AGGREGATE RESET
ANALYZE DROP CAST REVOKE
BEGIN DROP CONVERSION ROLLBACK
CHECKPOINT DROP DATABASE ROLLBACK TO SAVEPOINT
CLOSE DROP DOMAIN SAVEPOINT
CLUSTER DROP FUNCTION SELECT
COMMENT DROP GROUP SELECT INTO
COMMIT DROP INDEX SET
COPY DROP LANGUAGE SET CONSTRAINTS
CREATE AGGREGATE DROP OPERATOR CLASS SET SESSION AUTHORIZATION
CREATE CAST DROP OPERATOR SET TRANSACTION
CREATE CONSTRAINT TRIGGER DROP RULE SHOW
CREATE CONVERSION DROP SCHEMA START TRANSACTION
CREATE DATABASE DROP SEQUENCE TRUNCATE
CREATE DOMAIN DROP TABLE UNLISTEN
CREATE FUNCTION DROP TABLESPACE UPDATE
CREATE GROUP DROP TRIGGER VACUUM
命令: ALTER AGGREGATE
描述: 改变一个聚集函数的定义
语法:
ALTER AGGREGATE 名字 ( 类型 ) RENAME TO 新名字
ALTER AGGREGATE 名字 ( 类型 ) OWNER TO 新属主
命令: ALTER CONVERSION
描述: 改变一个转换的定义
语法:
ALTER CONVERSION 名字 RENAME TO 新名字
ALTER CONVERSION 名字 OWNER TO 新属主
命令: ALTER DATABASE
描述: 改变一个数据库
语法:
ALTER DATABASE 名字 SET 参数 { TO | = } { 值 | DEFAULT }
ALTER DATABASE 名字 RESET 参数
ALTER DATABASE 名字 RENAME TO 新名字
ALTER DATABASE 名字 OWNER TO 新属主
命令: ALTER DOMAIN
描述: 改变一个域的定义
语法:
ALTER DOMAIN 名字
{ SET DEFAULT 说明 | DROP DEFAULT }
ALTER DOMAIN 名字
{ SET | DROP } NOT NULL
ALTER DOMAIN 名字
ADD 域约束
ALTER DOMAIN 名字
DROP CONSTRAINT 约束名字 [ RESTRICT | CASCADE ]
ALTER DOMAIN 名字
OWNER TO 新宿主
命令: ALTER DOMAIN
描述: 改变一个域的定义
语法:
ALTER DOMAIN 名字
{ SET DEFAULT 说明 | DROP DEFAULT }
ALTER DOMAIN 名字
{ SET | DROP } NOT NULL
ALTER DOMAIN 名字
ADD 域约束
ALTER DOMAIN 名字
DROP CONSTRAINT 约束名字 [ RESTRICT | CASCADE ]
ALTER DOMAIN 名字
OWNER TO 新宿主
命令: ALTER FUNCTION
描述: 改变一个函数的定义
语法:
ALTER FUNCTION 名字 ( [ 类型 [, ...] ] ) RENAME TO 新名字
ALTER FUNCTION 名字 ( [ 类型 [, ...] ] ) OWNER TO 新属主
命令: ALTER GROUP
描述: 改变一个用户组
语法:
ALTER GROUP 组名称 ADD USER 用户名称 [, ... ]
ALTER GROUP 组名称 DROP USER 用户名称 [, ... ]
ALTER GROUP 组名称 RENAME TO 新名称
命令: ALTER INDEX
描述: 改变一个索引的定义
语法:
ALTER INDEX 索引名称
动作 [, ... ]
ALTER INDEX 索引旧名称
RENAME TO 索引新名称
动作为以下之一:
OWNER TO 新属主
SET TABLESPACE indexspace_name
命令: ALTER LANGUAGE
描述: 改变一个过程语言的定义
语法:
ALTER LANGUAGE 名字 RENAME TO 新名字
命令: ALTER OPERATOR
描述: 改变一个操作符的定义
语法:
ALTER OPERATOR 名字 ( { 左边类型 | NONE } , { 右边类型 | NONE } ) OWNER TO
新属主
命令: ALTER SCHEMA
描述: 改变一个模式的定义
语法:
ALTER SCHEMA 名字 RENAME TO 新名字
ALTER SCHEMA 名字 OWNER TO 新属主
命令: ALTER SEQUENCE
描述: 改变一个序列生成器的定义
语法:
ALTER SEQUENCE 名字 [ INCREMENT [ BY ] 递增 ]
[ MINVALUE 最小值 | NO MINVALUE ] [ MAXVALUE 最大值 | NO MAXVALUE
]
[ RESTART [ WITH ] 开始 ] [ CACHE 缓存 ] [ [ NO ] CYCLE ]
命令: ALTER TABLE
描述: 改变一个表的定义
语法:
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 表达式 ]
ALTER [ COLUMN ] 字段名 SET DEFAULT 表达式
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 TABLESPACE
描述: 改变一个表空间的定义
语法:
ALTER TABLESPACE 名字 RENAME TO 新名字
ALTER TABLESPACE 名字 OWNER TO 新属主
命令: ALTER TABLESPACE
描述: 改变一个表空间的定义
语法:
ALTER TABLESPACE 名字 RENAME TO 新名字
ALTER TABLESPACE 名字 OWNER TO 新属主
命令: ALTER TRIGGER
描述: 改变一个触发器的定义
语法:
ALTER TRIGGER 名字 ON 表 RENAME TO 新名字
命令: ALTER TYPE
描述: 改变一个类型的定义
语法:
ALTER TYPE 名字 OWNER TO 新属主
命令: ALTER USER
描述: 改变一个数据库用户
语法:
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 }
ALTER USER name RESET parameter
命令: ANALYZE
描述: 收集关于数据库的统计数字
语法:
ANALYZE [ VERBOSE ] [ 表 [ (字段 [, ...] ) ] ]
命令: CHECKPOINT
描述: 强行交易日志检查
语法:
CHECKPOINT
命令: CLOSE
描述: 关闭一个游标
语法:
CLOSE 名字
命令: COMMENT
描述: 定义或改变一个对象的评注
语法:
COMMENT ON
{
TABLE object_name |
COLUMN table_name.column_name |
AGGREGATE agg_name (agg_type) |
CAST (sourcetype AS targettype) |
CONSTRAINT constraint_name ON table_name |
CONVERSION object_name |
DATABASE object_name |
DOMAIN object_name |
FUNCTION func_name (arg1_type, arg2_type, ...) |
INDEX object_name |
LARGE OBJECT large_object_oid |
OPERATOR op (leftoperand_type, rightoperand_type)
OPERATOR CLASS object_name USING index_method |
[ PROCEDURAL ] LANGUAGE object_name |
RULE rule_name ON table_name |
SCHEMA object_name |
SEQUENCE object_name |
TRIGGER trigger_name ON table_name |
TYPE object_name |
VIEW object_name
} IS 'text'
命令: COMMIT
描述: 提交当前事务
语法:
COMMIT [ WORK | TRANSACTION ]
命令: COPY
描述: 在一个文件和一个表之间拷贝数据
语法:
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 AGGREGATE
描述: 定义一个新的聚集函数
语法:
CREATE AGGREGATE name (
BASETYPE = input_data_type,
SFUNC = sfunc,
STYPE = state_data_type
[ , FINALFUNC = ffunc ]
[ , INITCOnD= initial_condition ]
)
命令: CREATE CAST
描述: 定义一个新的类型转换
语法:
CREATE CAST (源类型 AS 目标类型)
WITH FUNCTION 函数名 (参数类型)
[ AS ASSIGNMENT | AS IMPLICIT ]
CREATE CAST (源类型 AS 目标类型)
WITHOUT FUNCTION
[ AS ASSIGNMENT | AS IMPLICIT ]
命令: CREATE CONSTRAINT TRIGGER
描述: 定义一个新的约束触发器
语法:
CREATE CONSTRAINT TRIGGER name
AFTER events ON
tablename constraint attributes
FOR EACH ROW EXECUTE PROCEDURE funcname ( args )
命令: CREATE CONVERSION
描述: define a new encoding conversion
语法:
CREATE [DEFAULT] CONVERSION 名字
FOR 源编码 TO 目标编码 FROM 函数名
命令: CREATE DATABASE
描述: 创建一个新的数据库
语法:
CREATE DATABASE 数据库名称
[ [ WITH ] [ OWNER [=] 数据库属主 ]
[ TEMPLATE [=] 模板 ]
[ ENCODING [=] 编码 ]
[ TABLESPACE [=] 表空间 ] ]
命令: CREATE DOMAIN
描述: 定义一个新的域
语法:
CREATE DOMAIN name [AS] data_type
[ DEFAULT expression ]
[ constraint [ ... ] ]
constraint 是:
[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression) }
命令: CREATE FUNCTION
描述: 定义一个新的函数
语法:
CREATE [ OR REPLACE ] FUNCTION 名字 ( [ [ 参数名字 ] 参数类型 [, ...] ] )
RETURNS 返回类型
{ LANGUAGE 语言名称
| IMMUTABLE | STABLE | VOLATILE
| CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT |
STRICT
| [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY
DEFINER
| AS 'definition'
| AS 'obj_file', 'link_symbol'
} ...
[ WITH ( attribute [, ...] ) ]
命令: CREATE GROUP
描述: 定义一个新的用户组
语法:
CREATE GROUP 组名 [ [ WITH ] option [ ... ] ]
option 可以为:
SYSID gid
| USER username [, ...]
命令: CREATE INDEX
描述: 定义一个新的索引
语法:
CREATE [ UNIQUE ] INDEX 索引名称 ON 表名 [ USING method ]
( { column | ( expression ) } [ opclass ] [, ...] )
[ TABLESPACE tablespace ]
[ WHERE predicate ]
命令: CREATE LANGUAGE
描述: 定义一个新的过程语言
语法:
CREATE [ TRUSTED ] [ PROCEDURAL ] LANGUAGE name
HANDLER call_handler [ VALIDATOR valfunction ]
命令: CREATE OPERATOR CLASS
描述: 定义一个新的操作符类
语法:
CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING
index_method AS
{ OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [
RECHECK ]
| FUNCTION support_number funcname ( argument_type [, ...]
)
| STORAGE storage_type
} [, ... ]
命令: CREATE OPERATOR CLASS
描述: 定义一个新的操作符类
语法:
CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING
index_method AS
{ OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [
RECHECK ]
| FUNCTION support_number funcname ( argument_type [, ...]
)
| STORAGE storage_type
} [, ... ]
命令: CREATE OPERATOR
描述: 定义一个新的操作符
语法:
CREATE OPERATOR name (
PROCEDURE = funcname
[, LEFTARG = lefttype ] [, RIGHTARG = righttype ]
[, COMMUTATOR = com_op ] [, NEGATOR = neg_op ]
[, RESTRICT = res_proc ] [, JOIN = join_proc ]
[, HASHES ] [, MERGES ]
[, SORT1 = left_sort_op ] [, SORT2 = right_sort_op ]
[, LTCMP = less_than_op ] [, GTCMP = greater_than_op ]
)
命令: CREATE RULE
描述: 定义一个新的重写规则
语法:
CREATE [ OR REPLACE ] RULE 名字 AS ON 事件
TO 表 [ WHERE 条件 ]
DO [ ALSO | INSTEAD ] { NOTHING | 命令 | ( 命令 ; 命令 ... ) }
命令: CREATE RULE
描述: 定义一个新的重写规则
语法:
CREATE [ OR REPLACE ] RULE 名字 AS ON 事件
TO 表 [ WHERE 条件 ]
DO [ ALSO | INSTEAD ] { NOTHING | 命令 | ( 命令 ; 命令 ... ) }
test=# \h CREATE SCHEMA
命令: CREATE SCHEMA
描述: 定义一个新的模式
语法:
CREATE SCHEMA 模式名称 [ AUTHORIZATION 用户名称 ] [ 模式元素 [ ... ] ]
CREATE SCHEMA AUTHORIZATION 用户名称 [ 模式元素 [ ... ] ]
命令: CREATE SEQUENCE
描述: 定义一个新的序列生成器
语法:
CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ]
increment ]
[ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO
MAXVALUE ]
[ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE
]
命令: CREATE TABLE
描述: 定义一个新的表
语法:
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 ]
命令: CREATE TABLESPACE
描述: 定义一个新的表空间
语法:
CREATE TABLESPACE 表空间名称 [ OWNER 用户名称 ] LOCATION '目录'
命令: CREATE TRIGGER
描述: 定义一个新的触发器
语法:
CREATE TRIGGER 名字 { BEFORE | AFTER } { 事件 [ OR ... ] }
ON 表 [ FOR [ EACH ] { ROW | STATEMENT } ]
EXECUTE PROCEDURE 函数名 ( 参数 )
命令: CREATE TYPE
描述: 定义一个新的数据类型
语法:
CREATE TYPE name AS
( attribute_name data_type [, ... ] )
CREATE TYPE name (
INPUT = input_function,
OUTPUT = output_function
[ , RECEIVE = receive_function ]
[ , SEND = send_function ]
[ , ANALYZE = analyze_function ]
[ , INTERNALLENGTH = { internallength | VARIABLE } ]
[ , PASSEDBYVALUE ]
[ , ALIGNMENT = alignment ]
[ , STORAGE = storage ]
[ , DEFAULT = default ]
[ , ELEMENT = element ]
[ , DELIMITER = delimiter ]
)
命令: CREATE USER
描述: 定义一个新的数据库用户帐户
语法:
CREATE USER name [ [ WITH ] option [ ... ] ]
where option can be:
SYSID uid
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| IN GROUP groupname [, ...]
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| VALID UNTIL 'abstime'
命令: DEALLOCATE
描述: 解除一个准备好的语句
语法:
DEALLOCATE [ PREPARE ] 规划名称
命令: DELETE
描述: 删除一个表的记录
语法:
DELETE FROM [ ONLY ] 表 [ WHERE 条件 ]
命令: DROP AGGREGATE
描述: 删除一个聚集函数
语法:
DROP AGGREGATE 名字 ( 类型 ) [ CASCADE | RESTRICT ]
命令: DROP CAST
描述: 删除一个类型转换
语法:
DROP CAST (源类型 AS 目标类型) [ CASCADE | RESTRICT ]
命令: DROP CONVERSION
描述: 删除一个转换
语法:
DROP CONVERSION 名字 [ CASCADE | RESTRICT ]
命令: DROP DATABASE
描述: 删除一个数据库
语法:
DROP DATABASE 名字
命令: DROP DOMAIN
描述: 删除一个域
语法:
DROP DOMAIN 名字 [, ...] [ CASCADE | RESTRICT ]
命令: DROP FUNCTION
描述: 删除一个函数
语法:
DROP FUNCTION 名字 ( [ 类型 [, ...] ] ) [ CASCADE | RESTRICT ]
命令: DROP GROUP
描述: 删除一个用户组
语法:
DROP GROUP 名字
命令: DROP INDEX
描述: 删除一个索引
语法:
DROP INDEX 名字 [, ...] [ CASCADE | RESTRICT ]
命令: DROP LANGUAGE
描述: 删除一个过程语言
语法:
DROP [ PROCEDURAL ] LANGUAGE 名字 [ CASCADE | RESTRICT
命令: DROP OPERATOR CLASS
描述: 删除一个操作符类
语法:
DROP OPERATOR CLASS name USING index_method [ CASCADE | RESTRICT
]
描述: 删除一个操作符
语法:
DROP OPERATOR 名字 ( { 左边类型 | NONE } , { 右边类型 | NONE } ) [ CASCADE |
RESTRICT ]
命令: DROP RULE
描述: 删除一个重写规则
语法:
DROP RULE 名字 ON 关系 [ CASCADE | RESTRICT ]
命令: DROP SCHEMA
描述: 删除一个模式
语法:
DROP SCHEMA 名字 [, ...] [ CASCADE | RESTRICT ]
命令: DROP SEQUENCE
描述: 删除一个序列
语法:
DROP SEQUENCE 名字 [, ...] [ CASCADE | RESTRICT ]
命令: DROP TABLE
描述: 删除一个表
语法:
DROP TABLE 名字 [, ...] [ CASCADE | RESTRICT ]
命令: DROP TABLESPACE
描述: 删除一个表空间
语法:
DROP TABLESPACE 表空间名字
命令: DROP TRIGGER
描述: 删除一个触发器
语法:
DROP TRIGGER 名字 ON 表 [ CASCADE | RESTRICT ]
命令: DROP TYPE
描述: 删除一个数据类型
语法:
DROP TYPE 名字 [, ...] [ CASCADE | RESTRICT ]
命令: DROP USER
描述: 删除一个数据库用户帐户
语法:
DROP USER 名字
命令: DROP VIEW
描述: 删除一个视图
语法:
DROP VIEW 名字 [, ...] [ CASCADE | RESTRICT ]
命令: END
描述: 提交当前事务
语法:
END [ WORK | TRANSACTION ]
命令: EXECUTE
描述: 执行一个准备好的语句
语法:
EXECUTE 规划名称 [ (参数 [, ...] ) ]
命令: EXPLAIN
描述: 显示语句的执行规划
语法:
EXPLAIN [ ANALYZE ] [ VERBOSE ] 语句
命令: FETCH
描述: 恢复来自一个使用游标查询的行
语法:
FETCH [ direction { FROM | IN } ] cursorname
direction 可以为空或下面的一种:
NEXT
PRIOR
FIRST
LAST
ABSOLUTE count
RELATIVE count
count
ALL
FORWARD
FORWARD count
FORWARD ALL
BACKWARD
BACKWARD count
BACKWARD ALL
命令: GRANT
描述: 定义访问权限
语法:
GRANT { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES |
TRIGGER
[,...] | ALL [ PRIVILEGES ] }
ON [ TABLE ] 表名称 [, ...]
TO { 用户名称 | GROUP 组名称 | PUBLIC } [, ...] [ WITH GRANT OPTION
]
GRANT { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ]
}
ON DATABASE 数据库名称 [, ...]
TO { 用户名称 | GROUP 组名称 | PUBLIC } [, ...] [ WITH GRANT OPTION
]
GRANT { EXECUTE | ALL [ PRIVILEGES ] }
ON FUNCTION 函数名称 ([类型, ...]) [, ...]
TO { 用户名称 | GROUP 组名称 | PUBLIC } [, ...] [ WITH GRANT OPTION
]
GRANT { USAGE | ALL [ PRIVILEGES ] }
ON LANGUAGE 语言名称 [, ...]
TO { 用户名称 | GROUP 组名称 | PUBLIC } [, ...] [ WITH GRANT OPTION
]
GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
ON SCHEMA 模式名称 [, ...]
TO { 用户名称 | GROUP 组名称 | PUBLIC } [, ...] [ WITH GRANT OPTION
]
GRANT { CREATE | ALL [ PRIVILEGES ] }
ON TABLESPACE 表空间名称 [, ...]
TO { 用户名称 | GROUP 组名称 | PUBLIC } [, ...] [ WITH GRANT OPTION
]
命令: INSERT
描述: 在一个表中创建新行
语法:
INSERT INTO 表名 [ ( 字段 [, ...] ) ]
{ DEFAULT VALUES | VALUES ( { 表达式 | DEFAULT } [, ...] ) |
子查询 }
命令: LISTEN
描述: 监听一个通知
语法:
LISTEN 名字
命令: LOAD
描述: 提取或重载一个共享库文件
语法:
LOAD '文件名'
命令: LOCK
描述: 锁定一个表
语法:
LOCK [ TABLE ] 名字 [, ...] [ IN lockmode MODE ] [ NOWAIT ]
lockmode 可以是下面的一种:
ACCESS SHARE | ROW SHARE | ROW EXCLUSIVE | SHARE UPDATE
EXCLUSIVE
| SHARE | SHARE ROW EXCLUSIVE | EXCLUSIVE | ACCESS
EXCLUSIVE
命令: MOVE
描述: 定位一个游标
语法:
MOVE [ direction { FROM | IN } ] cursorname
命令: NOTIFY
描述: 生成一个通知
语法:
NOTIFY 名字
命令: PREPARE
描述: 为执行准备一条语句
语法:
PREPARE 规划名称 [ (数据类型 [, ...] ) ] AS 语句
命令: REINDEX
描述: 重建索引
语法:
REINDEX { DATABASE | TABLE | INDEX } 名字 [ FORCE ]
命令: RELEASE SAVEPOINT
描述: 删除一个以前定义的 savepoint
语法:
RELEASE [ SAVEPOINT ] savepoint_name
命令: RESET
描述: 恢复运行时参数值为默认值
语法:
RESET 名字
RESET ALL
命令: REVOKE
描述: 删除访问权限
语法:
REVOKE [ GRANT OPTION FOR ]
{ { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES |
TRIGGER }
[,...] | ALL [ PRIVILEGES ] }
ON [ TABLE ] 表名称 [, ...]
FROM { 用户名称 | GROUP 组名称 | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ]
}
ON DATABASE 数据库名称 [, ...]
FROM { 用户名称 | GROUP 组名称 | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ EXECUTE | ALL [ PRIVILEGES ] }
ON FUNCTION 函数名称 ([类型, ...]) [, ...]
FROM { 用户名称 | GROUP 组名称 | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ USAGE | ALL [ PRIVILEGES ] }
ON LANGUAGE 语言名称 [, ...]
FROM { 用户名称 | GROUP 组名称 | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
ON SCHEMA 模式名称 [, ...]
FROM { 用户名称 | GROUP 组名称 | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ CREATE | ALL [ PRIVILEGES ] }
ON TABLESPACE 表空间名称 [, ...]
FROM { 用户名称 | GROUP 组名称 | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
命令: ROLLBACK
描述: 终止当前事务
语法:
ROLLBACK [ WORK | TRANSACTION ]
命令: ROLLBACK TO SAVEPOINT
描述: 回滚到一个 savepoint
语法:
ROLLBACK [ WORK | TRANSACTION ] TO [ SAVEPOINT ] savepoint_name
命令: SAVEPOINT
描述: 在当前事物中定义一个新的 savepoint
语法:
SAVEPOINT savepoint_name
命令: SELECT
描述: 恢复一个表或视图的行
语法:
SELECT [ ALL | DISTINCT [ ON ( 表达式 [, ...] ) ] ]
* | 表达式 [ AS output_name ] [, ...]
[ FROM from_item [, ...] ]
[ WHERE 条件 ]
[ GROUP BY 表达式 [, ...] ]
[ HAVING 条件 [, ...] ]
[ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]
[ ORDER BY expression [ ASC | DESC | USING operator ] [,
...] ]
[ LIMIT { count | ALL } ]
[ OFFSET start ]
[ FOR UPDATE [ OF 表名 [, ...] ] ]
from_item 可以是下面的一种:
[ ONLY ] table_name [ * ] [ [ AS ] alias [ ( column_alias [,
...] ) ] ]
( select ) [ AS ] alias [ ( column_alias [, ...] ) ]
function_name ( [ argument [, ...] ] ) [ AS ] alias [ (
column_alias [, ...] | column_definition [, ...] ) ]
function_name ( [ argument [, ...] ] ) AS (
column_definition [, ...] )
from_item [ NATURAL ] join_type from_item [ ON
join_condition | USING ( join_column [, ...] ) ]
命令: SELECT INTO
描述: 以一个查询的结果定义一个新的表
语法:
SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]
* | expression [ AS output_name ] [, ...]
INTO [ TEMPORARY | TEMP ] [ TABLE ] new_table
[ FROM from_item [, ...] ]
[ WHERE condition ]
[ GROUP BY expression [, ...] ]
[ HAVING condition [, ...] ]
[ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]
[ ORDER BY expression [ ASC | DESC | USING operator ] [,
...] ]
[ LIMIT { count | ALL } ]
[ OFFSET start ]
[ FOR UPDATE [ OF tablename [, ...] ] ]
命令: SET
描述: 改变一个运行时参数
语法:
SET [ SESSION | LOCAL ] 名字 { TO | = } { 值 | '值' | DEFAULT }
SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL | DEFAULT
}
命令: SET CONSTRAINTS
描述: 设置当前交易的约束检查模式
语法:
SET CONSTRAINTS { ALL | 名字 [, ...] } { DEFERRED | IMMEDIATE }
命令: SET SESSION AUTHORIZATION
描述: 设置当前会话的会话用户确认和当前用户确认
语法:
SET [ SESSION | LOCAL ] SESSION AUTHORIZATION 用户名称
SET [ SESSION | LOCAL ] SESSION AUTHORIZATION DEFAULT
RESET SESSION AUTHORIZATION
命令: SET TRANSACTION
描述: 设置当前交易的属性
语法:
SET TRANSACTION 事物模式 [, ...]
SET SESSION CHARACTERISTICS AS TRANSACTION 事物模式 [, ...]
事物模式为下面之一:
ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ
COMMITTED | READ UNCOMMITTED }
READ WRITE | READ ONLY
命令: SHOW
描述: 显示运行时参数值
语法:
SHOW 名字
SHOW ALL
命令: START TRANSACTION
描述: 开始一个事务块
语法:
START TRANSACTION [ 事物模式 [, ...] ]
事物模式为下面之一:
ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ
COMMITTED | READ UNCOMMITTED }
READ WRITE | READ ONLY
命令: TRUNCATE
描述: 清空一个表
语法:
TRUNCATE [ TABLE ] 名字
命令: UNLISTEN
描述: 停止监听通知
语法:
UNLISTEN { 名字 | * }
命令: UPDATE
描述: 更新一个表的记录
语法:
UPDATE [ ONLY ] 表名 SET 字段 = { 表达式 | DEFAULT } [, ...]
[ FROM fromlist ]
[ WHERE 条件 ]
命令: VACUUM
描述: 垃圾回收和可选择分析一个数据库
语法:
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ 表 ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ 表 [ (列 [, ...] ) ]
]