关系型数据库PostgreSQL 命令

记录在此,备查。

\d [ table ]
列出数据库中的表,或(如果声明了)表 table 的列/字段.如果表名是用统配符 (“”)声明的,列出所有表和表的列/字段信息.
\da
列出所有可用聚集.
\dd object
列出 pg_description 里对声明的对象的描述,对象可以是一个表,表中的列/字段,类型,操作符或聚集.
小技巧:并非所有对象在 pg_description 里有描述.此后期命令在快速获取 Postgres 内部特性时很有用.
\df
列出函数.
\di
只列出索引.
\do
只列出操作符.
\ds
只列出序列.
\dS
列出系统表和索引.
\dt
只列出非系统表.
\dT
列出类型.
\e [ filename ]
编辑当前查询缓冲或文件 filename 的内容.
\E [ filename ]
编辑当前查询缓冲或文件 filename 的内容并且在编辑结束后执行之.
\f [ separator ]
设置域分隔符.缺省是单个空白.
\g [ { filename | |command } ]
将当前查询输入缓冲送给后端并且(可选的)将输出放到 filename 或通过管道将输出送给一个分离的Unix shell 用以执行 command.
\h [ command ]
给出声明的 SQL 命令的语法帮助.如果 command 不是一个定义的 SQL 命令(或在 psql 里没有文档),或没有声明 command ,这时 psql将列出可获得帮助的所有命令的列表.如果命令 command 是一个通配符(“
”),则给出所有 SQL 命令的语法帮助.
\H
切换 HTML3 输出.等效于 -H 命令行选项.
\i filename
从文件 filename 中读取查询到输入缓冲.
\l
列出服务器上所有数据库.
\m
切换老式监视器样的表输出,这时表周围有边界字符包围着.这是标准 SQL 输出.缺省时,psql 只包括列/字段间的分隔符.
\o [ { filename | |command } ]
将后面的查询结果输出到文件 filename 或通过管道将后面结果输出到一个独立的Unix shell 里执行 command.如果没有声明参数,将查询结果输出到stdout.
\p
打印当前查询缓冲区.
\q
退出 psql 程序.
\r
重置(清空)查询缓冲区.
\s [ filename ]
将命令行历史打印出或是存放到 filename.如果省略 filename ,将不会把后继的命令存放到历史文件中.此选项只有在 psql 配置成使用输入行时才有效.
\t
切换输出的列/字段名的信息头和行记数脚注(缺省是开).
\T table_options
允许你在使用HTML 3.0 格式输出时声明放在表 table ... 中的标记选项.例如,border 将给你的表以边框.这必须和 \H 后期命令一起使用.
\x
切换扩展行格式.当打开时,每一行将在左边打印列/字段名而在右边打印列/字段值.这对于那些不能在一行输出的超长行是很有用的.HTML 行输出模式也支持这个标记.
\w filename
将当前查询缓冲区输出到文件 filename.
\z
生成一个带有正确 ACL(赋予/禁止 权限)的数据库中所有表的输出列表.
! [ command ]
回到一个独立的Unix shell或执行一个Unix 命令 command.
?
获得关于反斜杠 (“\”) 命令的帮助.

一般选项

\c[onnect] [数据库名|- [用户名称]]
联接到新的数据库 (当前为 "test")
\cd [目录名] 改变当前的工作目录
\copyright 显示 PostgreSQL 用法和发布信息
\encoding [编码]
显示或设置客户端编码
\h [名字] SQL 命令的语法帮助, 用 * 可以看所有命令的帮助
\q 退出 psql
\set [名字 [值]]
设置内部变量, 如果没有参数就列出所有
<b>\timing 查询计时开关切换 (目前是 关闭)</b>
\unset 名字 取消(删除)内部变量
! [命令] 在 shell 里执行命令或者开始一个交互的 shell

信息选项

\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 一样)

命令: ABORT
描述: 终止当前事务
语法:
ABORT [ WORK | TRANSACTION ]

命令: ALTER DATABASE
描述: 改变一个数据库
语法:
ALTER DATABASE 名字 SET 参数 { TO | = } { 值 | DEFAULT }
ALTER DATABASE 名字 RESET 参数
ALTER DATABASE 名字 RENAME TO 新名字
ALTER DATABASE 名字 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 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 TRIGGER
描述: 改变一个触发器的定义
语法:
ALTER TRIGGER 名字 ON 表 RENAME 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 }

命令: 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 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 ]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容

  • 系统用户: 1.sys system(sys权限最高) 2.sysman(操作企业管理器) 密码是安装的时候输入的...
    3hours阅读 1,516评论 0 0
  • 本文转自 http://www.cnblogs.com/jack204/archive/2012/04/30/24...
    Michael_林阅读 722评论 0 0
  • Oracle 基础 一、概述 Oracle的安装 下载地址:oracle官网卸载: 安装目录/dbhome_1/d...
    七弦桐语阅读 827评论 2 10
  • MySQL 数据库常用命令 1、MySQL常用命令 create database name; 创建数据库 use...
    55lover阅读 4,757评论 1 57
  • 伴随着互联网进入人们的生活中,人手一部手机已不足为奇,学生学习、交流、购物的方式也慢慢转换到了网络。然而每一...
    鸭鸭y阅读 516评论 5 8