postgres日常操作
1.启动pgsl数据库
[postgres@master ~]$ pg_ctl start
[postgres@master data]$ pg_ctl -D /usr/local/pgsql/data start
2.查看pgsql版本
[postgres@master ~]$ pg_ctl --version
3.命令行登录数据库
psql -U username -d dbname -h hostip -p port
[postgres@master ~]$ psql -U zhang -d mydb -h 127.0.0.1 -p 5432
psql (10.5)
Type "help" for help.
mydb=>
4.列出所有数据库
[postgres@master ~]$ psql -U zhang -d mydb -h 127.0.0.1 -p 5432
psql (10.5)
Type "help" for help.
mydb=> \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
mydb | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
postgres | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
template0 | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
test | postgres | UTF8 | zh_CN.UTF-8 | zh_CN.UTF-8 |
(5 rows)
5.切换数据库
mydb=> \c test
You are now connected to database "test" as user "zhang".
6.指定表的所有字段
mydb=> \d employees
Table "public.employees"
Column | Type | Collation | Nullable | Default
--------+---------+-----------+----------+---------
id | integer | | |
age | integer | | |
mydb=>
7.查看指定表的基本情况
mydb=> \d+ employees
Table "public.employees"
Column | Type | Collation | Nullable | Default | Storage | Stats target | Description
--------+---------+-----------+----------+---------+---------+--------------+-------------
id | integer | | | | plain | |
age | integer | | | | plain | |
mydb=>
8.新建表
create table TESTCASE(
id INTEGER,
task_class INTEGER,
age TEXT,
PRIMARY KEY(id, task_class)
);
9.自增SERIAL
create table CREATETASK_CHKID_N(
id SERIAL PRIMARY KEY,
chk_id TEXT,
n INTEGER
);
#生成一个以表名_id_seq的序列
mydb=> \d createtask_chkid_n_id_seq
Sequence "public.createtask_chkid_n_id_seq"
Type | Start | Minimum | Maximum | Increment | Cycles? | Cache
---------+-------+---------+------------+-----------+---------+-------
integer | 1 | 1 | 2147483647 | 1 | no | 1
Owned by: public.createtask_chkid_n.id
#查看下一个值
mydb=> select nextval('createtask_chkid_n_id_seq');
nextval
---------
1
(1 row)
#插入数据
insert into CREATETASK_CHKID_N values(nextval('createtask_chkid_n_id_seq'),'zhang',10)
10.删除表
drop table CREATETASK_CHKID_N
11.清空表
truncate table TESTCASE;
delete from TESTCASE;
12.添加字段
alter table [表名] add column [字段名] [类型];
alter table testcase add column rate_term numeric(5,0);
13.更改字段名称
alter table [表名] rename column [旧字段名] to [新字段名]; ALTER TABLE testcase rename column rate_term to rate;
14.修改列属性
ALTER TABLE testcase ALTER COLUMN rate TYPE integer;
15.执行SQL文件
psql -h localhost -d databaseName -U username -f filename
psql -h 127.0.0.1 -d mydb -U zhang -f testcase.sql
16. 查询结果存储到输出文件
mydb=> \o /home/postgres/exp_testcase.dat
mydb=> select id from testcase;
mydb=> \q
[postgres@master ~]$ more exp_testcase.dat
id
----
1
2
(2 rows)
postgres日常操作的更多相关文章
- LINUX日常操作二
参见:Linux日常操作一 selinux 开启和关闭 一.查看SELinux状态:1./usr/sbin/sestatus -v ##如果SELinux status参数为enabled ...
- ORACLE日常操作手册
转发自:http://blog.csdn.net/lichangzai/article/details/7955766 以前为开发人员编写的oracle基础操作手册,都基本的oracle操作和SQL语 ...
- Oracle 11g 物理Dataguard日常操作维护(二)
Oracle 11g 物理Dataguard日常操作维护(二) 2017年8月25日 14:34 3.3 3.3.1 查看备库进程状态 SYS(125_7)@fpyj123> select pr ...
- redis日常操作
redis针对所有类型的日常操作: keys * ## 取出所有key keys my* ## 模糊匹配 exists name ## 存在name键返回1,否则返回0 del key1 ## 删除一 ...
- 从零开始使用git第二篇:git的日常操作
从零开始使用git 第二篇:git的日常操作 第一篇:从零开始使用git第一篇:下载安装配置 第二篇:从零开始使用git第二篇:git实践操作 第三篇:从零开始使用git第三篇:git撤销操作.分支操 ...
- python专题我对json的日常操作
一前言 本篇文章将会阐述对json的日常操作,如何读取json文件,将json文件转为字典:如何将字典转为json,将字典写入文件等: 二 josn数据格式简要说明 json对于初学者可以理解是一种数 ...
- Linux 日常操作
Linux 日常操作 */--> Linux 日常操作 Table of Contents 1. 查看硬件信息 1.1. 服务器型号序列号 1.2. 主板型号 1.3. 查看BIOS信息 1.4 ...
- [No000094]SVN学习笔记4-版本库概念与部分日常操作
基本概念 版本库 Subversion 使用集中的数据库,它包含了所有的版本控制文件及其完整历史.这个数据库就是版本库.版本库通常位于运行 Subversion 服务器的文件服务器上,向 Subver ...
- hbase日常操作及维护
一,基本命令: 建表:create 'testtable','coulmn1','coulmn2' 也可以建表时加coulmn的属性如:create 'testtable',{NAME => ' ...
随机推荐
- 小程序API:wx.showActionSheet 将 itemList动态赋值
1.发现问题: 小程序调用API:wx.showActionSheet 时发现无论如何都不能将其属性itemList动态赋值. 2.分析问题: 首先我认为可能是格式的问题,itemList必须要求格式 ...
- 2019.12.05【ABAP随笔】 分组循环(LOOP AT Group) / REDUCE
ABAP 7.40新语法 LOOP AT Group 和 REDUCE *LOOP AT itab result [cond] GROUP BY key ( key1 = dobj1 key2 = d ...
- python高级 之(五) --- 文件操作
文件操作 """ 在程序中操作的文件内容: 1. 读取文件中的内容 2. 向文件中写入内容 首先: 在程序中与文件建立一个通道,通过通道操作文件指针,达到所要的结果 向文 ...
- web学习(2019-10)
@“fuzz一下”:所有注入爆破题/其他题,必fuzz 在安全测试中,模糊测试(fuzz testing)是一种介于完全的手工渗透测试与完全的自动化测试之间的安全性测试类型 模糊测试(fuzz tes ...
- 重学 html の meta 标签
参考链接: https://segmentfault.com/a/1190000019052062?utm_medium=hao.caibaojian.com&utm_source=hao.c ...
- 建立EF访问数据库架构时,出现One or more validation errors were detected during model generation
原因是因为我在写实体类的时候没有为实体类中的属性声明一个主键,即用[key]特性标注在属性上,这样DbContext才能为我们在数据库上找到对应的主键 using System.ComponentMo ...
- WinForm笔记1:TextBox编辑时和DataGridView 单元格编辑时 的事件及其顺序
TextBox 编辑框 When you change the focus by using the mouse or by calling the Focus method, focus event ...
- 8.X版本的node打包时,gulp命令报错 require.extensions.hasownproperty
版本不兼容的问题,低版本的gulp只能在低版本的node上执行. 修改一下node-modules/require-dir/index.js的97行代码即可,如下:
- C#追加日志文件
追加日志文件 using System; using System.IO; class DirAppend { public static void Main() { using (StreamWri ...
- [ZJOI2007]捉迷藏(动态点分治/(括号序列)(线段树))
题目描述 Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子.某天,Jiajia.Wind和孩子们决定在家里玩捉迷藏游戏.他们的家很大且构造很奇特,由N个屋子和N-1条双向走廊组成,这N-1条 ...