数据模型与主键
数据模型(来源维基百科)
- 层次模型(轻量级数据访问协议)
- 网状模型(大型数据储存)
- 关系模型
- 对象模型
- 平面模型(表格模型,一般在形式上是一个二维数组。如表格模型数据Excel)
- 面向对象模型
- 半结构化模型
分别对应着下图的三种关系
⚠️关系模型已成为绝对的市场份额。简单说数据结构就是「我中有你,你中有我」
数据类型
INT | 整型 | 4字节整数类型,范围约+/-21亿 |
---|---|---|
BIGINT | 长整型 | 8字节整数类型,范围约+/-922亿亿 |
REAL | 浮点型 | 4字节浮点数,范围约+/-1038 |
DOUBLE | 浮点型 | 8字节浮点数,范围约+/-10308 |
DECIMAL(M,N) | 高精度小数 | 由用户指定精度的小数,例如,DECIMAL(20,10)表示一共20位,其中小数10位,通常用于财务计算 |
CHAR(N) | 定长字符串 | 存储指定长度的字符串,例如,CHAR(100)总是存储100个字符的字符串 |
VARCHAR(N) | 变长字符串 | 存储可变长度的字符串,例如,VARCHAR(100)可以存储0~100个字符的字符串 |
BOOLEAN | 布尔类型 | 存储True或者False |
DATE | 日期类型 | 存储日期,例如,2018-06-22 |
TIME | 时间类型 | 存储时间,例如,12:20:59 |
DATETIME | 日期和时间类型 | 存储日期+时间,例如,2018-06-22 12:20:59 |
关系模型
- 关系数据库建立在关系模块上,本质上是若干的存储数据的二维表,可以看做多个Excel表的集合。
- 关系表的形成有一个重要的约束,任意两条记录不能完全重复,是可以通过某个的唯一字段来区分不同的记录。这个唯一的字段成为「主键」。