Psql命令行快速参考

psql命令行快速参考

psql的命令语法是:

psql [options] [dbname [username]]
psql命令行选项以及它们的意思在表1-1中列出。使用以下命令可以看到psql完整的选项列表:
$ psql --help
表1-1 psql命令行选项
选项 意义
-a 从脚本中响应所有输入
-A 取消表数据输出的对齐模式;功能与“-P format=unaligned”相同
-c <查询> 仅仅运行一个简单的查询(或者内部命令)然后退出
-d <数据库名> 指定连接到的数据库名(默认为$PGDATABASE或者当前登录用户名)
-e 回显发送到服务器的查询
-E 显示内部命令生成的查询语句
-f <文件名> 执行一个文件中的查询,然后退出
-F <字符串> 指定列数据显示分隔符(默认为“|”);功能与“-P fieldsep=<字符串>”相同
-h <主机> 指定数据库服务器主机(默认为$PGHOST或者本地主机)
-H 设置表格输出模式为HTML;功能与“-P format=html”相同
--help 显示帮助,然后退出
-l 列出存在的数据库,然后退出
-n 禁用readline;阻止行编辑
-o <文件名> 将查询的输出发送到文件名指定文件(使用“|管道”的形式将输出发送到一个过滤程序)
-p <端口> 指定数据库服务器的端口(默认为$PGPORT或者编译期设置的默认值,通常为4321)
-P var[=arg] 设置打印选项var为arg(查看\pset命令)
-q 以静默方式运行(没有任何消息,仅有查询的输出)
-R <字符串> 设置记录的分隔符(默认为换行);功能与“-P recordsep=<字符串>”相同
-s 设置为单步执行模式(每条查询都需要确认)
-S 设置单行模式(每行结束就认为查询输入结束,而不是分号)
-t 只打印行;功能与“-P tuples_only”相同
-T <文本> 设置HTML表格标记选项(width,border等);功能与“-P tableattr=<text>”相同
-U <用户名> 指定数据库用户(默认为$PGUSER或者当前登录的用户名)
-v name=value 设置psql变量name的值为value
--version 显示版本信息然后退出,也可以用“-V”
-W 强制提示输入密码(如果需要密码,会自动执行)
-x 开启扩展表格输出;功能与“-P expanded”相同
-X 不读取启动文件(~/.psqlrc)

psql内部命令快速参考

psql支持的内部命令在表1-2中列出。在很多版本的PostgreSQL中,这些命令有一些更易读的长模式(例如\list就是\l的长模式命令)。
表1-2 psql命令行选项
选项 意义
? 列出所有的psql内部命令
\a 在表格对齐和非对齐模式之间切换。
\c[onnect] [dbname|- [user]] 连接到新的数据库;使用“-”作为数据库名指连接到默认数据库。可以user身份连接数据库
\C <标题> 设置输出表格的标题;功能与“\pset 标题”相同
\cd <目录> 改变工作目录
\copy … Perform SQL COPY with data stream to the client machine.
\copyright 显示PostgreSQL的使用和发布条款
\d <表> 描述表(或者视图、索引、序列生成器)
\d{t|i|s|v} 列出表/索引/序列生成器/视图
\d{p|S|l} 列出访问许可/系统表/大对象
\da 列出聚合体(aggregates)
\db 列出表空间
\dc 列出conversions
\dC 列出casts
\dd [对象] 列出表、类型、函数或者操作的注释
\dD 列出domains
\df 列出函数(自定义函数???)需要验证
\dg 列出groups
\dl 列出大对象;也可以写作“\lo_list”
\dn 列出模式
\do 列出operators
\dT 列出数据类型
\du 列出用户
\e [file] 使用外部编辑器编辑当前的查询缓冲区或者file指定的文件
\echo <文本> 将文本打印到标准输出
\encoding <编码> 设置客户端编码
\f <分隔符> 修改输出字段的分隔符
\g [文件名] 将查询的结果发送到后端(结果输出到文件或者|管道)
\h [命令] 显示SQL命令的帮助;*表示所有命令的详细说明
\H 开启HTML模式
\i <文件名> 从文件中读取并执行查询
\l 列出所有的数据库
\lo_export,\lo_import,\lo_list,\lo_unlink 执行大对象操作
\o [文件名] 将所有的查询结果发送到文件或者|管道
\p 显示当前查询缓冲区的内容
\pset <选项> 设置表输出选项,可设置的选项可以是以下中的一个:format,border,expanded,fieldsep,footer,null,recordsep,tuples_only,title,tableattr,pager
\q 退出psql
\qecho <文本> 将文本写入到查询输出流(参考\o命令)
\r 重置(清空)查询缓冲区
\s [文件名] 打印历史或将历史存入文件中
\set <变量> <值> 设置内部变量
\t 只显示行(在该模式之间切换)
\T <标记> 设置HTML表格的标记;功能和“\pset tableattr”相同
\timing 显示命令执行的时间(在显示和不显示这两种模式间切换)
\z 列出对表、视图和序列生成器的访问许可
! [命令] 切换到shell或者执行一个shell命令
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容