[转]PostgreSQL命令行使用手册
启动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命令行使用手册的更多相关文章
- postgreSQL命令大全(更新中)
1.PostgreSQL索引的建立https://blog.csdn.net/jubaoquan/article/details/78850899: 2.PostgreSQL9中索引的原理和效率查询h ...
- 最有用的Linux命令行使用技巧集锦
最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips.将该题目的回答进行学习总结,加上自己的一些经验,记录如下,方便自己和大家参考. 下面介绍的都是一些命令行工具,这些工具在 ...
- 【Linux工具】svn命令行使用实例
引言 网上有这么多介绍 svn 使用的文章,为什么还要写?因为它们深入不浅出,平铺不分类,理论不实际,看完也记不住. 本文先介绍基本用法,后进行实例演练.不求大而全,只求熟练常用,自行用 svn he ...
- 【Linux 操作系统】Ubuntu 基础操作 基础命令 热键 man手册使用 关机 重启等命令使用
. : 关机, 如果将Linux默认运行等级设置为0, 系统将无法启动; -- : 多用户模式, 允许使用网络文件系统, 一般不使用图形界面登陆就是这种模式; -- : 多用户图形界面模式, 该模式下 ...
- python命令行使用的问题
python命令行使用的时候要注意一个陷阱,就是如果某个语句不是在>>>下执行的,而是在...下执行的,那么它可能没有执行成功. 例如如下没有成功,原因是上面有一句注释,导致没有执行 ...
- postgresql命令行[转]
postgresql命令行 原文链接 PostgreSQL 8.1 中文文档 连接数据库, 默认的用户和数据库是postgrespsql -U user -d dbname \c dbname 切换数 ...
- Ubuntu 基础操作 基础命令 热键 man手册使用 关机 重启等命令使用
. : 关机, 如果将Linux默认运行等级设置为0, 系统将无法启动; -- : 多用户模式, 允许使用网络文件系统, 一般不使用图形界面登陆就是这种模式; -- : 多用户图形界面模式, 该模式下 ...
- cmd命令速查手册
CMD命令速查手册ASSOC显示或修改文件扩展名关联AT 计划在计算机上运行的命令和程序ATTRIB 显示或更改文件属性BREAK 设置或清除扩展式 CTRL+C检查CACLS显示或修改文件的访问控制 ...
- mac svn命令行使用入门
本文转载至 http://blog.sina.com.cn/s/blog_6bfa2fc10101euf6.html mac svn命令行使用入门 1. 初始化项目 svn import /Use ...
随机推荐
- Linux出现wrong ELF class: ELFCLASS64
安装软件时出现问题 ×.so.×:wrong ELF class: ELFCLASS64 ,大致的意思是软件是32位的,需要32位的 ×.so.×动态链接库,而系统是64位的所提供的该 动态链接库 ...
- mybat使用注解的方式如@Select写sql
package com.polymer.app.mapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibati ...
- prefixspan python
from:https://github.com/chuanconggao/PrefixSpan-py API Usage Alternatively, you can use the algorith ...
- hadoop之安装
在Linux环境下安装Hadoop: 一.安装环境 硬件:虚拟机 操作系统:Centos 6.4 64位 IP:192.168.153.130主机名:imooc安装用户:root ...
- laravel5.2加载自定义的aliyun扩展包
把文件夹加载进来 在 app.php里面注册 serviceprovider 在 app/filesystems.php 里面 加入相关的配置 把 cloud的值 改成对应的扩展 在.env文件里面完 ...
- Win强制删除文件windows批处理强行删除文件
一般情况下选中文件或文件夹可以直接删除文件,但是有些情况下例如:文件非常规命名.找不到文件位置等就无法直接删除. 针对这种情况可以用 bat批处理文件 删除,一下就是该方法的步骤 新建一个文件:*** ...
- 远程连接Linux
远程连接Linux 为什么要远程连接Linux 在实际的工作场景中,虚拟机界面或者物理服务器本地的终端都是很少接触的,因为服务器装完系统之后,都要拉倒IDC机房托管,如果是购买的云主机,那更碰不到 ...
- scrapy的Middleware
对于下载中间件 settings里的数字大小: process_request的顺序 数字越小,越先调用 process_response 的顺序, 数字越大,越先调用 返回值: process_re ...
- 划分树(poj2104)
poj2104 题意:给出n个数,有m次查询,每次查询要你找出 l 到 r 中第 k 大的数: 思路:划分树模板题 上述图片展现了查询时如何往下递推的过程 其中ly表示 [sl,l) 中有多少个数进入 ...
- Core 配置文件Json
appsettings.json 文件属性 -复制到输出目录-始终复制.