Postgresql基础操作

Tip:本人安装的postgresql版本是psql (PostgreSQL) 9.6rc1

1、命令行登录数据库

psql -U 用户名 -d 连接数据库的名字 [还可以填上服务器地址和端口5432]
psql -U ricky -d mydb

如果psql mydb
则默认使用登陆系统的用户名连接数据库,如果系统的默认用户名和数据库名相同直接可以省掉数据库名,直接psql
登陆成功后可能出现两种提示符:

mydb=> 表示普通的用户
mydb=> 表示数据库的超级用户

2、使用图形界面管理数据库

可以使用pgAdmin图形界面管理工具,这个工具在安装数据库的同时就可以安装。

3、退出shell

使用\q退出

mydb=> \q

4、反斜杠

psql程序中有些不属于SQL命令,是以反斜杠开头。
比如\h可以查看帮助信息。

基础操作

  • 查看所有用户
my_db=# \du
                             角色列表
 角色名称 |                    属性                    | 成员属于
----------+--------------------------------------------+----------
 postgres | 超级用户, 建立角色, 建立 DB, 复制, 绕过RLS | {}
 ricky    | 超级用户, 建立角色, 建立 DB                | {}
  • 更改密码
my_db=# \password ricky   这里修改了用户ricky的密码
输入新的密码:
  • 删除用户
my_db=# drop user ricky;
错误:  当前用户不能被删

之所以会出现这样的错误是因为使用当前数据库的用户正要被删除,这样是不允许的。应该使用超级管理员登录数据库系统,然后删除该用户。

  • 创建数据库
mydb=# CREATE DATABASE my_db OWNER ricky;
CREATE DATABASE
mydb=# GRANT ALL PRIVILEGES ON DATABASE my_db to ricky;  将数据库的权限给用户
mydb=# \c my_db   连接到刚刚创建的数据库
  • 查看所有的数据库
testdb=# \l
                                                        数据库列表
   名称    |  拥有者  | 字元编码 |            校对规则            |             Ctype              |       存取权限     
-----------+----------+----------+--------------------------------+--------------------------------+-----------------------
 mydb     | ricky    | UTF8     | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 |
 postgres  | postgres | UTF8     | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 |
 template0 | postgres | UTF8     | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 | =c/postgres          +
           |          |          |                                |                                | postgres=CTc/postgres
 template1 | postgres | UTF8     | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 | =c/postgres          +
           |          |          |                                |                                | postgres=CTc/postgres
 testdb    | ricky    | UTF8     | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 | =Tc/ricky            +
           |          |          |                                |                                | ricky=CTc/ricky
(5 行记录)
  • 查看表
mydb=# \d
               关联列表
 架构模式 |   名称   |  类型  | 拥有者
----------+----------+--------+--------
 public   | user_tbl | 数据表 | ricky
 public   | yser_tbl | 数据表 | ricky
  • 查看表结构
mydb=# \d user_tbl;  \d 加上表名
          数据表 "public.user_tbl"
    栏位    |         类型          | 修饰词
------------+-----------------------+--------
 name       | character varying(20) |
 signp_date | date  
  • 其他常用命令
\password           设置密码。
\q                  退出。
\h                  查看SQL命令的解释,比如\h select。
\?                  查看psql命令列表。
\l                  列出所有数据库。
\c [database_name]  连接其他数据库。
\d                  列出当前数据库的所有表格。
\d [table_name]     列出某一张表格的结构。
\du                 列出所有用户。
\e                  打开文本编辑器。
\conninfo           列出当前数据库和连接的信息。

end

    原文作者:嘿嘿_小余同学
    原文地址: https://www.jianshu.com/p/21a9a1d0488a
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞