PSQL工具使用技巧

psql功能强大,技巧怎么用只能后续慢慢补充了,看一个工具先看怎么用help
$ psql #连接到数据库服务器,可以在其中输入相应的SQL语句或者psql的命令,psql的命令都以\开始
$ \l #列出所有的数据库
$ \d #查看表的结构
$ \d 表名 #查看指定表的具体结构
$ create database 新数据库名 #创建新的数据库
$ \c 已经有的数据库名 #切换当前数据库到指定的数据库
$ psql -h 主机名/ip地址 -p 端口号 数据库名称 用户名称 #连接到指定的数据库
$ \d #显示所有的表
$ \d 表名 #显示指定的表的结构
$ \d 索引名 #显示指定索引的结构
$ \d 后跟通配符或者?等 #?代表匹配一个 代表匹配多个,如\d s*会匹配以s开头后跟任意个字符的表或者索引并显示出来,\d s?会匹配以s开头后跟一个字符的表或者索引并显示出来
$ \d+ #该命令会比\d命令显示更详细的信息,除了前面介绍的那些,它还会显示任何与表相关联的注释,以及表中出现的OID,\d+可以代替之前的任意以\d开头的命令
$ \dt #只显示表
$ \di #只显示所有的索引
$ \ds #只显示序列
$ \dv #只显示视图
$ \df #只显示函数
$ \timing on #显示SQL的执行时间
$ \timing off #关闭显示SQL的执行时间
$ \dn #显示所有的schema
$ \db #显示所有的表空间
$ \du 或者 \dg #显示数据库中的所有角色和用户
$ \dp 或者 \z 表名 #显示表的权限分配情况
$ \encoding utf8 #当客户端的字符编码和服务器的不一样时,可能会显示乱码,可以使用\encoding命令来指定客户端的字符编码,如使用\encoding utf8来指定客户端的编码方式为utf8
\pset命令用于指定输出的格式,具体如下:
\pset border 0 : 表示输出内容物边框
\pset border 1 : 表示边框只在内部,默认情况下采用的是该条命令
\pset border 2 : 表示内外都存在边框
历史命令与补全功能
使用上下键可以查看历史命令
两次tab键可以实现命令补全或者给出输入提示
在psql中事务是自动提交的,比方说,执行完一条create table语句之后,事务就会被自动的提交,如果不想自动的提交,方法有两种:
方案一:运行begin命令,然后执行相应的SQL语句,最后在执行commit或者rollback语句
方案二:直接使用psql中的命令关闭自动提交的功能,\set AUTOCOMMIT off ,该命令设置自动提交关闭
实际上,MySQL等数据库也是这样的情况,当我们不使用显示的事务语句时,每一条SQL语句都被作为一个事务,或者说数据库内部将每一个SQL语句封装为一个事务,在PostgreSQL中仍然是这样的,平时使用时要注意。
得到psql中真实执行的SQL语句
aoldbs=# help
You are using psql, the command-line interface to PostgreSQL.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
aoldbs=#

eg:查看SQL commands
aoldbs=# \h drop table
Command: DROP TABLE
Description: remove a table
Syntax:
DROP TABLE [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]

aoldbs=#


\?查看PSQL命令

General
\copyright show PostgreSQL usage and distribution terms
\g [FILE] or ; execute query (and send results to file or |pipe)
\gset [PREFIX] execute query and store results in psql variables
\q quit psql
\watch [SEC] execute query every SEC seconds

Help
\? [commands] show help on backslash commands
\? options show help on psql command-line options
\? variables show help on special variables
\h [NAME] help on syntax of SQL commands, * for all commands

Query Buffer
\e [FILE] [LINE] edit the query buffer (or file) with external editor
\ef [FUNCNAME [LINE]] edit function definition with external editor
\p show the contents of the query buffer
\r reset (clear) the query buffer
\w FILE write query buffer to file

Input/Output
\copy ... perform SQL COPY with data stream to the client host
\echo [STRING] write string to standard output
\i FILE execute commands from file
\ir FILE as \i, but relative to location of current script
\o [FILE] send all query results to file or |pipe
\qecho [STRING] write string to query output stream (see \o)

Informational
(options: S = show system objects, + = additional detail)
\d[S+] list tables, views, and sequences
\d[S+] NAME describe table, view, sequence, or index
\da[S] [PATTERN] list aggregates
\db[+] [PATTERN] list tablespaces
\dc[S+] [PATTERN] list conversions
\dC[+] [PATTERN] list casts
\dd[S] [PATTERN] show object descriptions not displayed elsewhere
\ddp [PATTERN] list default privileges
\dD[S+] [PATTERN] list domains
\det[+] [PATTERN] list foreign tables
\des[+] [PATTERN] list foreign servers
\deu[+] [PATTERN] list user mappings
\dew[+] [PATTERN] list foreign-data wrappers
\df[antw][S+] [PATRN] list [only agg/normal/trigger/window] functions
\dF[+] [PATTERN] list text search configurations
\dFd[+] [PATTERN] list text search dictionaries
\dFp[+] [PATTERN] list text search parsers
\dFt[+] [PATTERN] list text search templates
\dg[+] [PATTERN] list roles
\di[S+] [PATTERN] list indexes
\dl list large objects, same as \lo_list
\dL[S+] [PATTERN] list procedural languages
\dm[S+] [PATTERN] list materialized views
\dn[S+] [PATTERN] list schemas
\do[S] [PATTERN] list operators
\dO[S+] [PATTERN] list collations
\dp [PATTERN] list table, view, and sequence access privileges
\drds [PATRN1 [PATRN2]] list per-database role settings
\ds[S+] [PATTERN] list sequences
\dt[S+] [PATTERN] list tables
\dT[S+] [PATTERN] list data types
\du[+] [PATTERN] list roles
\dv[S+] [PATTERN] list views
\dE[S+] [PATTERN] list foreign tables
\dx[+] [PATTERN] list extensions
\dy [PATTERN] list event triggers
\l[+] [PATTERN] list databases
\sf[+] FUNCNAME show a function‘s definition
\z [PATTERN] same as \dp

Formatting
\a toggle between unaligned and aligned output mode
\C [STRING] set table title, or unset if none
\f [STRING] show or set field separator for unaligned query output
\H toggle HTML output mode (currently off)
\pset [NAME [VALUE]] set table output option
(NAME := {format|border|expanded|fieldsep|fieldsep_zero|footer|null|
numericlocale|recordsep|recordsep_zero|tuples_only|title|tableattr|pager|
unicode_border_linestyle|unicode_column_linestyle|unicode_header_linestyle})
\t [on|off] show only rows (currently off)
\T [STRING] set HTML <table> tag attributes, or unset if none
\x [on|off|auto] toggle expanded output (currently off)

Connection
\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}
connect to new database (currently "aoldbs")
\encoding [ENCODING] show or set client encoding
\password [USERNAME] securely change the password for a user
\conninfo display information about current connection

Operating System
\cd [DIR] change the current working directory
\setenv NAME [VALUE] set or unset environment variable
\timing [on|off] toggle timing of commands (currently off)
! [COMMAND] execute command in shell or start interactive shell

Variables
\prompt [TEXT] NAME prompt user to set internal variable
\set [NAME [VALUE]] set internal variable, or list all if no parameters
\unset NAME unset (delete) internal variable

Large Objects
\lo_export LOBOID FILE
\lo_import FILE [COMMENT]
\lo_list
\lo_unlink LOBOID large object operations

原文地址:http://blog.51cto.com/aklaus/2059098

时间: 2024-10-13 16:55:15

PSQL工具使用技巧的相关文章

PostgreSQL快速入门:psql工具的使用

一.psql介绍 psql是PostgreSQL中的一个命令行交互式客户端工具,类似Oracle中的命令行工具sqlplus: 1.允许你交互地键入SQL或命令,然后把它们发出给PostgreSQL服务器,再显示SQL或命令的结果: 2.输入的内容还可以来自一个文件: 3.还提供了一些元命令和多种类似shell的特性来实现书写脚本,以及对对量任务的自动化工作: 二.psql的简单实用 按照前面的步骤,切换su - postgres用户,实用psql工具连接数据库. 1.查看有哪些数据库 post

psql 工具详细使用介绍

psql 介绍 psql 是 PostgreSQL 中的一个命令行交互式客户端工具, 它允许你交互地键入 SQL 命令,然后把它们发送给 PostgreSQL 服务器,再显示 SQL 或命令的结果. 输入的内容允许来自一个文件,此外它还提供了一些元命令和多种类似 shell 的特性来实现书写脚本,以及对大量任务的自动化工作. 特性:方便快捷.没有图形化工具使用上的一些限制 psql 的简单使用     直接输入 psql 进入到命令行下:       安装数据库时,会自动创建一个与当前操作系统用

everything搜索工具小技巧

everything工具平时用的也不多,但是有时候使用的时候却总是找不着北. everything支持五种搜索方式,如下图: 正则匹配搜索: 当你选择正则匹配之后,你可能需要匹配某个文件夹里面的某个文件名字,或某个文件名里面的部分字符(记不清楚文件名字),甚至某个文件里面的所有一类文件 正则语法: a|b a或bgr(a|e)y 匹配 gray 或 grey. 任一字符[abc] 任一字符:a或b或c[^abc] 任一字符,但不包括a.b.c[a-z] 从a到z之间的任一字符[a-zA-Z]从a

Extjs 4.2使用心得 --- combobox组合框和paging 分页工具使用技巧

这两个功能经常会一并使用到,一般在生成combo组合框时,设置pageSize大于0,在下拉列表的页脚位置会自动创建一个分页工具栏,前提是queryMode:'remote' 读取远程数据时. 先来建立一个Model: Ext.define('Post', { extend: "Ext.data.Model", proxy: { type: 'ajax', url: '/admin/organizations/ExtCombox/', reader: { type: 'json', r

操作系统开发的工具与技巧

操作系统开发的工具与技巧_IT/计算机_专业资料.如何开发操作系统操作...(cDest,szData); // 使用 cDest ... } NASM 汇编器微软的宏汇编器MASM http://www.zhihu.com/people/wplzzmrnhttp://www.zhihu.com/people/xdcwchttp://www.zhihu.com/people/pqdwdlhttp://www.zhihu.com/people/dqdbkgulthttp://www.zhihu.c

badboy工具应用技巧

案例:在web架构的平台上添加大量的用户 思路:利用badboy先录制添加一个用户的步骤,再整理脚本提高效率,接着参数化脚本,设置excel传值,最后执行play 步骤: 1.打开badboy,新建一个脚本,默认添加一个录制步骤,点击暂停录制,在地址栏输入要录制的平台WebIP地址,如https://172.10.39.130,点击右侧的转入或按键盘回车键展示平台登录页面,登录系统切换到用户管理模块,打开添加用户对话框,点击开始录制按钮,输入用户相关信息点击save保存(即用户添加完成),此时点

工欲善其事,必先利其器 之 WPF篇: 随着开发轨迹来看高效WPF开发的工具和技巧

原文:工欲善其事,必先利其器 之 WPF篇: 随着开发轨迹来看高效WPF开发的工具和技巧 之前一篇<工欲善其事,必先利其器.VS2013全攻略(安装,技巧,快捷键,插件)!> 看到很多朋友回复和支持,非常感谢,尤其是一些拍砖的喷油,感谢你们的批评,受益良多. 我第一份工作便是WPF的开发,一直到现在都非常喜欢这门技术,从懵懵懂懂到现在有一些WPF开发资历,也算是经历了一段坎坷的过程.我的朋友看到我写了VS2013的全攻略,他就推荐我写一个WPF篇,我想了下,的确很多朋友初接触WPF的时候难免会

浏览器开发者工具使用技巧

浏览器开发者工具使用技巧 学习网址: https://developers.google.cn/web/tools/chrome-devtools/ http://www.css88.com/doc/chrome-devtools/javascript/add-breakpoints/ 1.使用开发者工具 Chrome : F12 / ctrl+shift+i /选项->更多工具 =====>打开开发者工具 [1]设置开发者工具窗口显示位置(默认居右显示,可以设置居下,居左或与当前页面分离)

【工具使用】—Chrome工具使用技巧

建议学习网址浏览器开发者工具使用技巧 需要掌握的 Html+Css错误调试   --Elements Js错误调试 --Resources 模拟不同浏览器 toggle device toolbar 模拟移动设备 断点调试.进入函数.跳出函数等等,遇到具体问题多Google 可参考资料前端chrome浏览器调试总结 原文地址:https://www.cnblogs.com/Shinea_SYR/p/9081154.html