特点
- PostgreSQL支持多中操作系统。
- PostgreSQL支持文本,图像,声音和视频,并包括用于C/C++,Java,Perl,Python,Ruby,Tcl和开放数据库连接(ODBC)的编程接口。
- PostgreSQL支持SQL的许多功能,例如复杂SQL查询,SQL子选择,外键,触发器,视图,事务,多进程并发控制(MVCC),流式复制(9.0),热备(9.0))。
- 在PostgreSQL中,表可以设置为从“父”表继承其特征。
- 可以安装多个扩展以向PostgreSQL添加附加功能。
教程
数据类型
- 数值数据类型 名称| 描述| 存储大小 | 范围| | --------- | ------------------- | ---- | ------------------------------------------ | | smallint | 存储整数,小范围 | 2字节 | -32768 至 +32767 | | integer | 存储整数。使用这个类型可存储典型的整数 | 4字节 | -2147483648 至 +2147483647 | | bigint | 存储整数,大范围。 | 8字节 | -9223372036854775808 至 9223372036854775807 | | decimal | 用户指定的精度,精确 | 变量 | 小数点前最多为131072个数字; 小数点后最多为16383个数字。 | | numeric | 用户指定的精度,精确 | 变量 | 小数点前最多为131072个数字; 小数点后最多为16383个数字。 | | real | 可变精度,不精确 | 4字节 | 6位数字精度 | | double | 可变精度,不精确 | 8字节 | 15位数字精度 | | serial | 自动递增整数 | 4字节 | 1 至 2147483647 | | bigserial | 大的自动递增整数 | 8字节 | 1 至 9223372036854775807
- 字符串数据类型
| 数据类型 | 描述 |
|---|---|
| char(size) | 这里size是要存储的字符数。固定长度字符串,右边的空格填充到相等大小的字符。 |
| character(size) | 这里size是要存储的字符数。 固定长度字符串。 右边的空格填充到相等大小的字符。 |
| varchar(size) | 这里size是要存储的字符数。 可变长度字符串。 |
| character varying(size) | 这里size是要存储的字符数。 可变长度字符串。 |
| text | 可变长度字符串。 |
- 日期/时间数据类型
| 名称 | 描述 | 存储大小 | 最小值 | 最大值 | 解析度 |
|---|---|---|---|---|---|
| timestamp [ (p) ] [不带时区 ] | 日期和时间(无时区) | 8字节 | 4713 bc | 294276 ad | 1微秒/14位数 |
| timestamp [ (p) ]带时区 | 包括日期和时间,带时区 | 8字节 | 4713 bc | 294276 ad | |
| date | 日期(没有时间) | 4字节 | 4713 bc | 5874897 ad | 1微秒/14位数 |
| time [ (p) ] [ 不带时区 ] | 时间(无日期) | 8字节 | 00:00:00 | 24:00:00 | 1微秒/14位数 |
| time [ (p) ] 带时区 | 仅限时间,带时区 | 12字节 | 00:00:00+1459 | 24:00:00-1459 | 1微秒/14位数 |
| interval [ fields ] [ (p) ] | 时间间隔 | 12字节 | -178000000年 | 178000000年 | 1微秒/14位数 |
- 其他类型
| 名称 | 描述 | 存储大小 | |
|---|---|---|---|
| boolean | 它指定true或false的状态。 | 1字节 | |
| money | 货币金额 | 8字节 | -92233720368547758.08 至 +92233720368547758.07 |
| point | 16字节 | 在一个平面上的点 | (x,y) |
| line | 32字节 | 无限线(未完全实现) | ((x1,y1),(x2,y2)) |
| lseg | 32字节 | 有限线段 | ((x1,y1),(x2,y2)) |
| box | 32字节 | 矩形框 | ((x1,y1),(x2,y2)) |
| path | 16+16n字节 | 封闭路径(类似于多边形) | ((x1,y1),…) |
| polygon | 40+16n字节 | 多边形(类似于封闭路径) | ((x1,y1),…) |
| circle | 24字节 | 圆 | <(x,y),r>(中心点和半径) |
- 使用
CREATE TYPE创建自定义数据类型
库表操作
- 库 create database testdb; 或使用pgAdmin创建
- 表