postgresql 学习笔记(一) psql 使用说明

15 篇文章 0 订阅
13 篇文章 1 订阅

postgresql 学习笔记 (一) psql 使用说明

一.psql 使用说明

1. 不指定用户名和密码连接数据库

数据库安装并启动后,通过psql即可登录到数据库,代码如下:

 [pgdy@ postgres]$ psql
 psql(11Type "help" for help.

用户使用psql可以直接登录到PostgreSQL。这种方式不需要输入用户名和密码,因为在安装PostgresQL时,会创建一个与初始化数据库时的操作系统用户同名的数据库用户。
另外,这个用户是数据库的超级用户。如果上述登录方式不指定用户名和密码,则 psql 会读取环境变量"$PGUSER”的值作为登录用户名。如果没有配置该环境变量,则使用当前操作系统用户名进行登录。

2. 如果使用与操作系统用户名不相同的数据库用户名连接对应的数据库,则需要指定对应的用户名和数据库名称。

ip地址 虚构

 用户名是“hr”,数据库名称是"hr_db”,代码如下:
[pgdy@postgres]$ psql -h 10.40.160.130 -p 5432-U postgres -d cs_db
psql (10.5)
Type "help" for help.
-h后面的IP地址( 10.40.160.130)是数据库所在的IP地址。
-p后面的端口(5432)是数据库的监听端口。
-U后面的参数(postgres)是创建的用户名。
-d后面的参数(cs_db)是创建的数据库名称。

3. 常用命令

3.1断开psql连接
\q

-bash-4.2$ psql
psql (11.5)
输入 "help" 来获取帮助信息.

postgres=# \q
-bash-4.2$ 

3.11 \c cs
进入 cs数据库

3.2 \d 命令
进入数据库后查看所有视图,表

3.3 \db 查看表空间

postgres=# \db
       List of tablespaces
    Name    |  Owner   | Location 
------------+----------+----------
 pg_default | postgres | 
 pg_global  | postgres | 
(2 rows)

3.4 \dn 查看所有模式

postgres=# \db
       List of tablespaces
    Name    |  Owner   | Location 
------------+----------+----------
 pg_default | postgres | 
 pg_global  | postgres | 
(2 rows)

3.5 \du 命令
查看所有用户和角色

postgres-# \du
                                   List of roles
 Role name |                         Attributes                         | Member of 
-----------+------------------------------------------------------------+-----------
 postgres  | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
 repuser   | Replication                                               +| {}
           | 3 connections                                              | 
 sync      |                                                            | {}

3.6 \x 命令
使用"x"命令,可以设置查询结果的输出模式

3.7 ?
帮助命令

postgres=# \?
一般性
  \copyright              显示PostgreSQL的使用和发行许可条款
  \crosstabview [COLUMNS] 执行查询并且以交叉表显示结果
  \errverbose            以最冗长的形式显示最近的错误消息
  \g [文件] or;          执行查询 (并把结果写入文件或 |管道)
  \gdesc                 描述查询结果,而不执行它
  \gexec                 执行策略,然后执行其结果中的每个值
  \gset [PREFIX]         执行查询并把结果存到psql变量中
  \gx [FILE]             就像\g,但强制扩展输出模式
  \q             退出 psql
  \watch [SEC]          每隔SEC秒执行一次查询

帮助
  \? [commands]          显示反斜线命令的帮助
  \? options             显示 psql 命令行选项的帮助
  \? variables           显示特殊变量的帮助
  \h [名称]          SQL命令语法上的说明,用*显示全部命令的语法说明

查询缓存区
  \e [FILE] [LINE]        使用外部编辑器编辑查询缓存区(或文件)
  \ef [FUNCNAME [LINE]]   使用外部编辑器编辑函数定义
  \ev [VIEWNAME [LINE]]  用外部编辑器编辑视图定义
  \p                    显示查询缓存区的内容
  \r                     重置(清除)查询缓存区
  \s [文件]              显示历史记录或将历史记录保存在文件中
  \w 文件                将查询缓存区的内容写入文件

输入/输出
  \copy ...              执行 SQL COPY,将数据流发送到客户端主机
  \echo [字符串]         将字符串写到标准输出
  \i 文件                从文件中执行命令
  \ir FILE               与 \i类似, 但是相对于当前脚本的位置
  \o [文件]              将全部查询结果写入文件或 |管道
  \qecho [字符串]        将字符串写到查询输出串流(参考 \o)

条件

4.psql使用技巧

psql的使用技巧,对PostgreSQL用户来说非常重要。
4.1 获取元命令对应的SQL代码

psql执行元命令,实质上是转换成对应的SQL语句来执行的。如果要获取这些SQL语句,则需要在psql连接数据库时增加"-E"选项,

4.2 使用上下键翻动历史命令
psql支持使用上下键获取执行过的历史命令,

4.3 自动补全功能
psql的自动补全功能使用起来非常方便。在执行语句时,不需要完全输入数据库对象的名称,使用Tab键可以自动补全。例如,要查询表

department,在输入“d"之后按Tab键会自动出现department,再次按Tab键,则会列出所有以d开头的表对象,代码如下:

postgres=# select * from department --这里输入d之后按Tab 键
postgres=# select * from department--这里输入d之后按两次Tab 键departmentdepartment01department02

4.显示SQL语句执行时间
使用"\timing"命令,可以打开显示SQL语句执行时间的开关。再次使用一次"\timing"命令,则关掉该开关,

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
好的,我可以和你分享一些关于 PostgreSQL学习笔记。 1. PostgreSQL 是什么? PostgreSQL 是一种开源的关系型数据库管理系统,它支持 SQL 语言和 ACID 事务处理,并且具有丰富的特性和扩展性,可用于大型企业应用、Web 应用和嵌入式应用。 2. PostgreSQL 的特点 PostgreSQL 具有以下特点: - 开源免费 - 支持 ACID 事务处理 - 支持 SQL 语言 - 支持复杂查询和数据类型 - 支持存储过程和触发器 - 可以扩展和定制 - 可以跨平台运行 3. PostgreSQL 的安装 在 Windows 平台下,可以从官网下载 Windows 安装程序进行安装。在 Linux 平台下,可以使用包管理器安装,例如 Ubuntu 可以使用以下命令进行安装: ``` sudo apt-get install postgresql ``` 4. PostgreSQL 的基本操作 创建数据库: ``` CREATE DATABASE databasename; ``` 创建表: ``` CREATE TABLE tablename ( column1 datatype, column2 datatype, column3 datatype, .... ); ``` 插入数据: ``` INSERT INTO tablename (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); ``` 查询数据: ``` SELECT column1, column2, ... FROM tablename WHERE condition; ``` 更新数据: ``` UPDATE tablename SET column1 = value1, column2 = value2, ... WHERE condition; ``` 删除数据: ``` DELETE FROM tablename WHERE condition; ``` 5. PostgreSQL 的扩展 PostgreSQL 可以通过扩展来增强其功能,例如: - PostGIS:空间数据处理扩展 - PL/Python:Python 语言扩展 - pgAdmin:可视化管理工具 - pgpool-II:连接池和负载均衡工具 以上就是一些关于 PostgreSQL 的基本学习笔记,希望对你有所帮助。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yang_z_1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值