启动pgsl数据库

1
pg_ctl -D /xx/pgdata start

查看pgsl版本

1
pg_ctl --version

命令行登录数据库

1
psql -U username -d dbname -h hostip -p port

列出所有数据库

1
\l

切换数据库

1
\c dbname

列出当前数据库的所有表

1
\d

查看指定表的所有字段

1
\d tablename

查看指定表的基本情况

1
\d+ tablename

退出操作

1
q

新建表

例1(主键)

1
2
3
4
5
6
create table TESTCASE(
id INTEGER,
task_class INTEGER,
age TEXT,
PRIMARY KEY(id, task_class)
);

例2(自增SERIAL

1
2
3
4
5
create table CREATETASK_CHKID_N(
id SERIAL PRIMARY KEY,
chk_id TEXT,
n INTEGER
);

其中SERIAL代表自增,默认从1开始增加,每次自增1

删除表

1
drop table REL_CROSS_NODE;

清空表

1
delete from [表名]

添加字段

1
alter table [表名] add column [字段名] [类型];

更改字段

1
alter table [表名] rename column [旧字段名] to [新字段名];

例:把表table_ex字段col_1限制非空去掉:ALTER TABLE table_eg ALTER col_1 drop not NULL

  • 更改字段属性,含空格

如果把字段colname把属性Text转化为int,原来text里面存在空啥的,可以

1
ALTER TABLE tablename ALTER COLUMN colname TYPE int USING (trim(keyword)::integer);

删除字段

1
alter table [表名] drop column [字段名];

表中插入一行数据

1
insert into [表名] (字段1,字段2) values (值1,值2);

例如:

1
insert into assist_info (id, maat_id, block_type) values ('F006', 'F7775', 1)

注:如果表中字段有大写的字段,则需要对应的加上双引号。例:

1
insert into test (no, "Name") values ('123', 'jihite');

值用单引号引起来(‘’),不能用双引号(””)

表中删除一行数据

1
delete from [表名] where [该行特征];

修改表中数据

1
update [表名] set [目标字段名]=[目标值] where [该行特征]

删除表

1
drop table [表名];

退出postgreSql

1
\q

两个查询结果做差except

1
2
3
4
5
(select node_id from node where node_id=1 or node_id=2) except (select node_id from node where node_id=1);
node_id
---------
2
(1 row)

复制表

1
CREATE TABLE test_a_copy AS SELECT * FROM test_a;

命令导入sql数据文件

1
psql -h localhost -d databaseName -U username -f filename

查询结果存储到输出文件

格式:

1
\o file_path

这样就会把查询结果存储到输出文件中。例

1
2
3
postgres=> \o /home/jihite/data/iu_data;
postgres=> select test_id from cdb_all_iu_data limit 10;
postgres=> select test_id from cdb_all_iu_data limit 5;

结果:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
test_id
--------------
2143
2153
2144
2156
2145
2154
2146
2157
2147
2155
(10 rows)
 
test_id
--------------
2143
2153
2144
2156
2145
(5 rows)

数据库的备份&恢复

导出到线下文件

1
pg_dump --host hostname --port port --username username -t tablename -d dbname >/home/jihite/table.sql

把线下文件导入到数据库

1
psql -h 10.125.7.68 -p 5432 -d postgres -U postgres -W postgres -f 2.sql

\x 打开扩展显示功能

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
postgres=> \x
Expanded display is on.
postgres=> select * from cdb_chk_items where chk_id = 'R000000335';
-[ RECORD 1 ]+------------------------------------------------------------------------------------------------
chk_id | R000000335
chk_desc | 道路属性与道路属性相关检查
chk_info | {"FIELDS": {"TRAFFIC_SIGN": ["TYPE", "GEOM"], "ROAD_LINK": ["ROAD_CLASS", "FORM_WAY", "GEOM"]}}
err_desc | {"ERR2": "roadclass取值错误", "ERR1": "formway取值错误"}
chk_level | 1
is_opened | 1
module_name | TRAFFIC_SIGN
invalid_flag | 1
rel_mode | MAIN_LAYER:TRAFFIC_SIGN
: TRAFFIC_SIGN|A,M|DIRECT
: ROAD_LINK|A,M,D|ATTR_REL

从表A中把符合条件的记录拷贝到表B

1
insert into A select * from B where id in ('a', 'b', 'c');

转载自jihite博客:http://www.cnblogs.com/kaituorensheng/p/4667160.html

[转]PostgreSQL命令行使用手册的更多相关文章

  1. postgreSQL命令大全(更新中)

    1.PostgreSQL索引的建立https://blog.csdn.net/jubaoquan/article/details/78850899: 2.PostgreSQL9中索引的原理和效率查询h ...

  2. 最有用的Linux命令行使用技巧集锦

    最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips.将该题目的回答进行学习总结,加上自己的一些经验,记录如下,方便自己和大家参考. 下面介绍的都是一些命令行工具,这些工具在 ...

  3. 【Linux工具】svn命令行使用实例

    引言 网上有这么多介绍 svn 使用的文章,为什么还要写?因为它们深入不浅出,平铺不分类,理论不实际,看完也记不住. 本文先介绍基本用法,后进行实例演练.不求大而全,只求熟练常用,自行用 svn he ...

  4. 【Linux 操作系统】Ubuntu 基础操作 基础命令 热键 man手册使用 关机 重启等命令使用

    . : 关机, 如果将Linux默认运行等级设置为0, 系统将无法启动; -- : 多用户模式, 允许使用网络文件系统, 一般不使用图形界面登陆就是这种模式; -- : 多用户图形界面模式, 该模式下 ...

  5. python命令行使用的问题

    python命令行使用的时候要注意一个陷阱,就是如果某个语句不是在>>>下执行的,而是在...下执行的,那么它可能没有执行成功. 例如如下没有成功,原因是上面有一句注释,导致没有执行 ...

  6. postgresql命令行[转]

    postgresql命令行 原文链接 PostgreSQL 8.1 中文文档 连接数据库, 默认的用户和数据库是postgrespsql -U user -d dbname \c dbname 切换数 ...

  7. Ubuntu 基础操作 基础命令 热键 man手册使用 关机 重启等命令使用

    . : 关机, 如果将Linux默认运行等级设置为0, 系统将无法启动; -- : 多用户模式, 允许使用网络文件系统, 一般不使用图形界面登陆就是这种模式; -- : 多用户图形界面模式, 该模式下 ...

  8. cmd命令速查手册

    CMD命令速查手册ASSOC显示或修改文件扩展名关联AT 计划在计算机上运行的命令和程序ATTRIB 显示或更改文件属性BREAK 设置或清除扩展式 CTRL+C检查CACLS显示或修改文件的访问控制 ...

  9. mac svn命令行使用入门

    本文转载至 http://blog.sina.com.cn/s/blog_6bfa2fc10101euf6.html   mac svn命令行使用入门 1. 初始化项目 svn import /Use ...

随机推荐

  1. pytest文档14-函数传参和firture传参数request

    前言 为了提高代码的复用性,我们在写用例的时候,会用到函数,然后不同的用例去调用这个函数. 比如登录操作,大部分的用例都会先登录,那就需要把登录单独抽出来写个函数,其它用例全部的调用这个登陆函数就行. ...

  2. AngularJS服务及注入--Provider

    Provider简介 在AngularJS中,app中的大多数对象通过injector服务初始化和连接在一起. Injector创建两种类型的对象,service对象和特别对象. Service对象由 ...

  3. spring aop 中的JoinPoint

    AspectJ使用org.aspectj.lang.JoinPoint接口表示目标类连接点对象,如果是环绕增强时,使用org.aspectj.lang.ProceedingJoinPoint表示连接点 ...

  4. Confluence 6 安装指南

    在你开始之前 在你开始安装 Confluence 之前,请确定你的安装环境满足 最小系统安装要求和支持的平台. 如果你计划将你的 Confluence 运行到虚拟环境下,请参考 Running Con ...

  5. pyqt小例子

    from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtWidgets import QApplication, QMainWindow imp ...

  6. Php基本类型学习

    1.8种基本的数据类型 1)四种基本类型 boolean (布尔类型) integer(整形类型) double  (双精度类型) string  (字符串类型) 2)两种复合类型 array (数组 ...

  7. 在云服务器跑Python程序

    最近在鼓弄这TensorFlow的模型,有些模型实在是太大了,CPU占用率100%不说,还一跑起来就跑个大半天,严重影响了学习的进度,所以由于手里刚有一个不大使用的云服务器,配置虽然不咋地,至少还能跑 ...

  8. js 面试知识点

    基础           原型  原型链 作用域  闭包 异步  单线程 JS API        DOM操作 AJAX 事件绑定 开发环境    版本管理 模块化 打包工具 运行环境    页面渲 ...

  9. Centos7配置TiDB监控

    一: 1.1:http://192.168.1.12:3000/ 1.2:点击install Grafana wget https://dl.grafana.com/oss/release/grafa ...

  10. ServiceStack.Redis遇到的问题:ServiceStack.Redis.Generic.RedisTypedClient`1”的方法“get_Db”没有实现。

    问题: ServiceStack.Redis.Generic.RedisTypedClient`1”的方法“get_Db”没有实现. 解决方案: step 1::引用的三个 包版本保持一致 Servi ...