门户网站app有哪些青岛网站建设官网
postgreSql学习
- 学习参考:
 - 1、命令
 - 1.1 登录
 - 1.2 关闭连接
 
- 2、常用数据类型
 - 2.1 数值类型
 - 2.2 字符串类型
 - 2.3 时间
 - 2.4 其他
 
- 3、自增主键
 - 4、sql
 - 4.1 库操作
 - (1)创建新库
 - (2)切换数据库
 - (3)删库【谨慎!!!】
 - (4)查看数据库列表:
 - (5)查询每个库的大小
 
- 4.2 表操作
 - (1)建表
 - (2)查看表信息:
 - (3)插入数据
 - (4)查询数据
 - (5)修改数据
 - (6)删除数据
 
- 4.3 schema操作
 - (1)显示当前使用的schema
 - (2)创建shcema
 - (3)切换schema
 - (4)查看数据库下的所有schema列表
 - (5)查看schema下的表大小
 - (4)在指定schema下建表
 
学习参考:
B站系列视频:https://www.bilibili.com/video/BV1tL41177av/?spm_id_from=333.1007.top_right_bar_window_default_collection.content.click&vd_source=da451b7221fb782bcff994ca30c68ca6
官网:https://postgresql.p2hp.com/download/index.html
1、命令
1.1 登录
回车会让输入密码,默认连的数据库是postgres。
psql -h 127.0.0.1 -U postgres  
 
注意:这里数据库名、登录用户名、密码都设置是postgres,前两者是系统默认的,只有密码是在安装时自定义的。
- -h:数据库所在机器的hostname
 - -d:指定连接的数据库名,默认是postgres库
 - -U:数据库的登录用户名
 
1.2 关闭连接
\q 或 ctrl+c
 
2、常用数据类型
2.1 数值类型
smallint(2字节)、integer(4字节)、bigint(8字节)
 decimal、numeric – 用户可指定精度,精确
 real、double – 可变精度,不精确
2.2 字符串类型
char(size)、character(size) – 定长
 varchar(size)、character varying(size) – 变长
 text – 变长
2.3 时间
timestamp、date、time
2.4 其他
json、数组、boolean、money、几何数据等
3、自增主键
smallserial(2字节)、serial(4字节)、bigserial(8字节)
4、sql
4.1 库操作
(1)创建新库
创建名称为mytest的数据库。
create database mytest;  
 
(2)切换数据库
切换到mytest数据库。
\c mytest;  
 
(3)删库【谨慎!!!】
drop database mytest;
 
(4)查看数据库列表:
\l(是字母L的小写)或  select * from pg_database;
 
(5)查询每个库的大小
select pg_database.datname, pg_size_pretty(pg_database_size(pg_database.datname)) AS size from pg_database;
 
4.2 表操作
(1)建表
create table test(id serial primary key, name varchar(10));
 
(2)查看表信息:
\d -- 输出所有表的信息。
\d 表名; -- 输出指定表的结构及字段信息。
 
(3)插入数据
insert into test(name) values('jack');
 
(4)查询数据
select * from test;
 
(5)修改数据
update test set name='hong' where id=3;
 
(6)删除数据
没有where条件默认删除表里的全部数据。
delete from test where id=xx; 
 
4.3 schema操作
(1)显示当前使用的schema
show search_path;
 
(2)创建shcema
create schema myschema;
 
(3)切换schema
set search_path to myschema;
 
(4)查看数据库下的所有schema列表
select * from pg_catalog.pg_namespace;
 
(5)查看schema下的表大小
-  
先“\c xx”切换到指定数据库;
 -  
再执行以下语句,查询当前数据库下、schema='public’下的每张表的大小:
select relname, pg_size_pretty(pg_total_relation_size(relid)) from pg_stat_user_tables where schemaname='public' order by pg_relation_size(relid) desc; 
(4)在指定schema下建表
create table myschema.test(id int, name varchar(10));
