由于最近工作业务的需要,学习PG,被同事安利一本《PostgreSQL 修炼之道 从小工到专家》,就书中学习到自己觉得有用的摘录出来。
它类似于我之前接触过的Oracle 中的sqlplus ,一种终端工具
1.psql 工具
\d 查看当前数据库的所有表
\d + 显示更详细信息
\d t 显示这个表结构定义
\d tablename_pkey 显示索引信息
\timing on
select count(*) from temp;
显示SQL 已执行时间
\dn 显示所有schema
\db 显示表空间
指定字符集编译的命令:
当客户端字符集编码与服务器不一致,会显示乱码,
服务端:\encoding gbk; \encoding utf8
客户端: gbk utf8
\pset命令 设置输出格式
\pset border 0;输出内容无边框
\pset border 1;输出内容只在内容
\pset border 1;输出内容内外部都有边框
\x 把表中每一行数据拆分为单行
\i 文件名称 执行存储在外部文件的SQL文件
\echo 用于输出一行信息
psql 使用技巧
psql 中事物是自动提交,执行完一条delete 或者updata 语句,事物自动提交,如果不想提交的的解决办法:
1.begin -> dml语句 -> commit/rollback
2.使用命令行关闭 \set AUTOCOMMIT off (AUTOMINT 必须大些,虽然不会报错,但是此操作不起作用)