PostgreSQL psql 命令语法参数说明
psql
是PostgreSQL
数据库提供的命令行终端程序,它允许我们交互地输入、编辑、执行SQL命令。使用psql
进行数据库管理非常简单、轻量、高效,本站所有介绍PostgreSQL
文章中的示例全部基于psql
操作。
- psql语法格式
- 1.1 语法结构
- 1.2 参数说明
- psql的一些用法
- 2.1 数据库登录
- 2.2 切换数据库
- 2.3 查看所有数据库
- 2.4 查看数据库中的表
- 2.5 查看表中的字段
- 2.6 查看表信息
- 2.7 退出登录
1. psql
语法格式
psql
是一个使用命令行交互的PostgreSQL
客户端(终端),它允许你输入查询语句,然后把它们发出给PostgreSQL
,再将查询结果显示出来。交互方式不仅限于输入,也可以来自一个文件。
1.1 语法结构
psql
语法格式如下:
psql [OPTION]... [DBNAME [USERNAME]]
1.2 参数说明
psql
提供了一些可选参数,可以通过psql --help
命令来查看所安装版本支持的参数。
通用选项
-c, --command=COMMAND
:执行一条命令(或内置SQL)然后退出-d, --dbname=DBNAME
:默认连接的数据库-f, --file=FILENAME
:执行指定文件中的命令,然后退出-l, --list
:显示所有可用数据库名,然后退出-v, --set=, --variable=NAME=VALUE
:设置psql
变量-V, --version
:显示版本信息,然后退出-X, --no-psqlrc
:不读取启动文件(系统内置的psqlrc
及自定义的~/.psqlrc
都不启动)-1 ("one"), --single-transaction
:执行单条存储过程-?, --help
:显示帮助信息,然后退出
输入输出选项
-a, --echo-all
:在读取行时向标准输出打印所有内容-e, --echo-queries
:打印发送到服务器的内容-E, --echo-hidden
:显示内部命令生成的查询-L, --log-file=FILENAME
:将查询记录到指定的文件中-n, --no-readline
:命令行编辑中不使用readline-o, --output=FILENAM
:将查询输出定向到指定的文件中-q, --quiet
:静默处理(除查询输出外无其它输出)-s, --single-step
:单步模式运行。即:每个命令在发往服务器之前都要提示用户确认,用这个选项也可以取消执行。此选项主要用于调试脚本-S, --single-line
:单行运行模式,这时每个命令都将由换行符结束
输出格式选项
-A, --no-align
:切换为非对齐输出模式(默认为对齐模式)-F, --field-separator=STRING
:指定输出字段的分隔符(默认为“|”)-H, --html
:HTML表格输出模式-P, --pset=VAR[=ARG]
:切换打印风格-R, --record-separator=STRING
:设置非对齐输出的记录分隔符-t, --tuples-only
:仅输出数据行(关闭列名称和结果行计数脚本等)-T, --table-attr=TEXT
:设置HTML表格输出模式时的HTML属性(width、border等)-x, --expanded
:打开扩展表格式模式-z, --field-separator-zero
:为未对齐的输出设置字段分隔符为零字节-0, --record-separator-zero
:为未对齐的输出设置记录分隔符为零字
连接选项
-h, --host=HOSTNAM
:连接数据库服务器的主机IP或套接字目录(默认为“local socket”)-p, --port=PORT
:连接数据库服务器的端口号(默认为“5432”)-U, --username=USERNAME
:要连接数据库服务器的用户名-w, --no-password
:不提示密码。如果服务器需要密码验证而密码不可通过其他方式 (比如.pgpass文件)获得,则连接尝试将失败-W, --password
:强制使用密码
2. psql
的一些用法
整理完psql
命令后,下面介绍一些psql
的常场景。
2.1 数据库登录
使用postgres
用户登录安装在本机的数据库:
$ psql -U postgres Password for user postgres: //提示输入用户密码
输入用户密码后,登录成功
登录IP为192.168.1.3
的服务器,并连接到名为"test"的数据库:
$ psql -U postgres -H 192.168.1.3 -d test
2.2 切换数据库
如果登录时未指定数据库,或需要切换到其它数据库,可以使用\c
参数切换:
# \c dbname
以上命令相当于mysql
数据库的use dbname
命令。
2.3 查看所有数据库
查看当前系统中有哪些数据库可以使用\l
或\list
参数:
# \l
以上命令相当于mysql
数据库的show databases
命令。
2.4 查看数据库中的表
查看当前数据库中所有的表,使用\d
参数:
# \d
以上命令相当于mysql
数据库的show tables
命令。
2.5 查看表中的字段
查看指定表中的字段,使用\d dbtable
参数:
# \d mytable
以上命令相当于mysql
数据库的desc dbtable
或 show columns from dbtable
命令。
2.6 查看表信息
查看表信息,使用\d+ dbtable
参数:
# \d+ mytable
以上命令相当于mysql
数据库的describe dbtable
命令。
2.7 退出登录
退出登录,使用\q
参数:
# \q
以上命令相当于mysql
数据库的quit
或\q
命令。
PostgreSQL psql 命令语法参数说明相关推荐
- PostgreSQL入门之基本工具+常用psql命令+show语法
目录 一.bin目录下常用执行程序 1.1 pg_ctl 1.2 psql 1.3 pg_dump 1.4 pg_restore 二.psql命令 语法 三.show语法 语法 常用示例 ...
- linux 进入psql终端,PostgreSQL psql终端命令(PostgreSQL psql terminal command)
PostgreSQL psql终端命令(PostgreSQL psql terminal command) 我试图让psql格式很好,并在这里跟随文档. 现在,每当我对包含大量列的表执行查询时,无论我 ...
- 初学PostgreSQL数据库遇到的问题 - 使用psql命令连接不上已建好的数据库
1.问题描述:自己建了一个数据库forestry sample,使用psql命令连接不到这个数据库,会出现:致命错误:用户"sample"Password" 认证失败.如 ...
- PostgreSQL操作-psql命令详解
一.建立连接 psql -h hostname -p port -U username -d dbname -d dbname --dbname=dbname 指定要连接的数据库的名称 -h host ...
- ubuntu16.04下postgresql常用命令,及图形化管理界面pgadmin3
1.创建用户 create user jiraadmin with password '123456'; 创建jiraadmin用户并设置密码为123456 alter role jiraad ...
- postgresql常用命令
连接数据库, 默认的用户和数据库是postgres psql -U user -d dbname 切换数据库,相当于mysql的use dbname \c dbname 列举数据库,相当于mysql的 ...
- postgresql 常用命令行
postgresql 常用命令行 连接数据库, 默认的用户和数据库是postgres psql -U user -d dbname \c dbname 切换数据库,相当于mysql的use dbnam ...
- PostgreSql入门命令
1 命令行登录数据库 有两种方式,一是直接在系统shell下执行psql命令:而是先进入psql环境,然后再连接数据库.下面分别给出实例: (1)直接登录 执行命令:psql -h 192.168.1 ...
- PostgreSQL 元命令介绍
PostgreSQL元命令介绍 postgresql中的元命令是指以 \(反斜线)开通的命令,怕失去了,提供的丰富的元命令,能够便捷地管理数据库,比如查看数据库对象的定义,查看数据库对象占用空间的大小 ...
最新文章
- 北斗报文php,北斗卫星一代短报文通信技术
- java.lang.ClassCastException: com.sun.proxy.$Proxy2 cannot be cast to...异常
- 设计模式 命令模式 之 管理智能家电
- 解决虚机中的Centos7连不上网
- Altium Desiger18 打印 丝印简单的方法
- 单机PC手动更改windows update 地址
- CST normalize S-parameter to given impedance
- SSM错误:Exception in thread “main“ java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletReque
- Python可以这样学(第九季 机器学习案例与实战)-董付国-专题视频课程
- android内存泄露_Java应用程序中的内存泄漏及内存管理
- 前端缓存看这一篇就够了
- 像“钢铁侠”埃隆·马斯克那样,成为超速学习者
- php 加密算法+接口安全技术
- SAS 方差分析(复习4)
- 手机屏幕常见故障_触屏不灵敏、断触怎么回事?手机触摸屏的基本原理与常见问题排查方法介绍...
- python爬虫之抓取高清壁纸
- 如何还原完整差异备份
- Hook技术之消息拦截(Windows Hook )
- 对应届毕业生参加面试的一些建议
- 在 npm 发布中文 API 初体验——中国历代纪元
热门文章
- ipad+html+全屏模式,javascript – iPad上的Chrome全屏API?
- alios 系统配置转存到一个头文件
- C 宏定义实现字符大小写转换
- matlab 小游戏 找不同的颜色
- LabVIEW32位和64位的兼容性
- shell-grammar
- linux内存条故障,linux – 如何从MCE消息中找到故障内存模块?
- 2022中国新时代100大建筑公布,重庆来福士、北京大兴机场、港珠澳大桥等杰出工程入选 | 美通社头条...
- switch语句(分支语句)
- 在Angular6中使用primeNG UI框架