PostgreSQL学习笔记(三):表操作

1 表操作

表操作我们直接在管理工具上进行。

如果在工具连接过程中出现 no pg_hba.conf entry for host...,则需要修改 /var/lib/pgsql/11/data/pg_hba.conf 文件,将错误信息里面提到的IP加入到配置文件IPV4里,设置为信任trust。

1.1.1 创建表

标准的SQL语句,与MySQL相同,略。

1.1.2 修改表名
alter table <tablename> rename to <newtablename>

例如:

alter table tb_user rename to tb_user_1;
1.1.3 删除表
drop table [if exists] <tablename>

例如:

drop table [if exists] tb_user;
1.1.4 字段操作
1.1.4.0 字段类型
类型说明所需字节
SMALLINT小范围整数2byte
INT普通整数4byte
BIGINT大范围整数8byte
FLOAT(N)n表示小数范围4byte
REAL至少6位十进制数字精度4byte
DOUBLE PRECISION至少15位十进制数字精度/FLOAT8byte
NUMBERIC(M,N)M代表位数,N代表小数位数
例如68.32,M=4,N=2
TIME时间,格式HH:MM:SS
输入值可以是23:01:02,也可以是230102
也可以是当前时间now()或者CURRENT_TIME
8byte
DATE日期,格式YYYY-MM-DD/YY-MM-DD
输入值可以是2018-12-21,也可以是20181221
也可以是当前日期now()或者CURRENT_TIME
4byte
TIMESTAMP日期时间,格式YYYY-MM-DD HH:MM:SS8byte
CHAR(N)固定长度字符串,不足补空白
VARCHAR(N)可变长度字符串,有长度限制
TEXT可变长度字符串,无长度限制
BYTEA二进制字符串
BOOLEAN布尔类型
XXX[]数组类型,XXX
  • 整数正常使用INT即可,小数使用浮点数;
  • CHAR固定长度,速度快,但是占空间。
1.1.4.1 修改字段类型
alter table <tablename> alter column <columnname> type <newtype>;

例如:

alter table tb_class alter column classname type varchar(40);
1.1.4.2 修改字段名
alter table <tablename> rename <columnname> to <newcolumnname>;

例如:

alter table tb_class rename classname to classname1;
1.1.4.3 添加字段
alter table <tablename> add column <columnname> <type>

例如:

alter table tb_class add column teacher varchar(20);
1.1.4.4 删除字段
alter table <tablename> drop <columnname>

例如:

alter table tb_class drop teacher;
1.1.4.5 主键约束
  • 第一种情况

    CREATE TABLE tb_user(
    	userid VARCHAR(20) PRIMARY KEY, --主键约束
    	username VARCHAR(20),
    	PASSWORD VARCHAR(20),
    	classid varchar(20),
    )
    
  • 第二种情况

    create table tb_class(
    	classid varchar(20),
    	classname varchar(20),
    	PRIMARY key(classid) --主键约束
    )
    
  • 第三种情况

    alter table tb_user add primary key(userid);
    
  • 联合主键

    create table tb_class(
    	classid varchar(20),
    	classname varchar(20),
    	PRIMARY key(classid,classname)
    )
    
1.1.4.6 外键约束
  • 第一种情况

    CREATE TABLE tb_user(
    	userid VARCHAR(20),
    	username VARCHAR(20),
    	PASSWORD VARCHAR(20),
    	classid varchar(20),
    	FOREIGN KEY(classid) REFERENCES tb_class(classid)
    )
    
  • 第二种情况

    CREATE TABLE tb_user(
    	userid VARCHAR(20),
    	username VARCHAR(20),
    	PASSWORD VARCHAR(20),
    	classid varchar(20),
    	CONSTRAINT fk_user_classid FOREIGN KEY(classid) REFERENCES tb_class(classid)
    )
    
  • 第三种情况

    alter table tb_user add CONSTRAINT fk_user_classid FOREIGN KEY(classid) REFERENCES tb_class(classid);
    
  • 删除外键约束

    alter table tb_user drop CONSTRAINT fk_user_classid;
    
1.1.4.7 唯一约束
  • 第一种情况

    create table tb_class(
    	classid varchar(20),
    	classname varchar(20) UNIQUE
    )
    
  • 第二种情况

    create table tb_class(
    	classid varchar(20),
    	classname varchar(20),
    	CONSTRAINT UNQ_CLASSNAME UNIQUE(classname)
    )
    
    
  • 第三种情况

    alter table tb_class add CONSTRAINT UNIQ_CLASSNAME UNIQUE(classname);
    
1.1.4.8 非空约束
create table tb_class(
	classid varchar(20),
	classname varchar(20) NOT null
)
1.1.4.9 默认值
create table tb_class(
	classid varchar(20),
	classname varchar(20) default '一年级1班'
)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以和你分享一些关于 PostgreSQL学习笔记。 1. PostgreSQL 是什么? PostgreSQL 是一种开源的关系型数据库管理系统,它支持 SQL 语言和 ACID 事务处理,并且具有丰富的特性和扩展性,可用于大型企业应用、Web 应用和嵌入式应用。 2. PostgreSQL 的特点 PostgreSQL 具有以下特点: - 开源免费 - 支持 ACID 事务处理 - 支持 SQL 语言 - 支持复杂查询和数据类型 - 支持存储过程和触发器 - 可以扩展和定制 - 可以跨平台运行 3. PostgreSQL 的安装 在 Windows 平台下,可以从官网下载 Windows 安装程序进行安装。在 Linux 平台下,可以使用包管理器安装,例如 Ubuntu 可以使用以下命令进行安装: ``` sudo apt-get install postgresql ``` 4. PostgreSQL 的基本操作 创建数据库: ``` CREATE DATABASE databasename; ``` 创建: ``` CREATE TABLE tablename ( column1 datatype, column2 datatype, column3 datatype, .... ); ``` 插入数据: ``` INSERT INTO tablename (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); ``` 查询数据: ``` SELECT column1, column2, ... FROM tablename WHERE condition; ``` 更新数据: ``` UPDATE tablename SET column1 = value1, column2 = value2, ... WHERE condition; ``` 删除数据: ``` DELETE FROM tablename WHERE condition; ``` 5. PostgreSQL 的扩展 PostgreSQL 可以通过扩展来增强其功能,例如: - PostGIS:空间数据处理扩展 - PL/Python:Python 语言扩展 - pgAdmin:可视化管理工具 - pgpool-II:连接池和负载均衡工具 以上就是一些关于 PostgreSQL 的基本学习笔记,希望对你有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值