postgresql常用命令psql

原博客:https://blog.csdn.net/ghostliming/article/details/51036882

\d :显示数据库中有哪些表
\d tab_name :查看表的定义

PG中无dual表。
select 1+1;

\l :查看数据库
创建数据库并链接:
postgres=# create database test;
CREATE DATABASE
postgres=# \c test
您现在已经连接到数据库 “test”,用户 “postgres”.

psql连接数据库:psql -h -p db_name user_name
C:\Users\Administrator>psql -h localhost -p 5432 test postgres
psql (9.5.1)
输入 “help” 来获取帮助信息.

test=#

postgres=# \d test
数据表 “public.test”
栏位 | 类型 | 修饰词
------±--------±-------
id | integer |

postgres=# \d+ test
数据表 “public.test”
栏位 | 类型 | 修饰词 | 存储 | 统计目标 | 描述
------±--------±-------±------±---------±-----
id | integer | | plain | |

匹配不同对象类型的\d命令
如果想只显示匹配的表,可以使用\dt命令
如果想只显示索引,可以使用\di命令
如果想只显示序列,可以使用\ds
如果想只显示试图,可以使用\dv
显示sql运行时间 \timing on
列出所有schema \dn
显示所有的表空间 \db
列出数据库中的所有角色或用户: \du \dg PG中,用户和角色不分。
列出表的权限分配: \dp \z

指定字符集编译的命令: \encoding
\encoding gbk \encoding utf8

设置输出的格式:\pset
\pset border 0:输出内容无边框
\pset border 1:边框只在内部
\pset border 2:内外都有边框

\x :把表中的每一行的梅列数据都拆分成单行表示
postgres=# select * from test;

  • Record 1
    id 1
    name
  • Record 2
    id 1
    name 2

postgres=# \x
扩展显示已关闭。
postgres=# select * from test;
id name


1
1 2
(2 行记录)

\i 执行存储在外部文件中的sql语句或命令

\echo输出一行信息
postgres-# \echo hello
hello

默认,postgresql是自动提交的,可以避免自动提交
\set autocommit off

猜你喜欢

转载自blog.csdn.net/yueludanfeng/article/details/84132854