数据库学习记录1介绍了DDL (Data Definition Language) 数据定义语言。
在数据库学习记录2中,我们介绍常见的数据类型;
主要分为三类:数值类型、字符串类型、日期时间类型。
- 数值类型
类型 | 大小 | 有符号范围 | 无符号范围 | 描述 |
TINYINT | 1byte | (-128,127) | (0,255) | 小整 数值 |
SMALLINT | 2bytes | (-32768,32767) | (0,65535) | 大整 数值 |
MEDIUMINT | 3bytes | (-8388608,8388607) | (0,16777215) | 大整 数值 |
INT | 4bytes | (-2147483648, 2147483647) | (0,4294967295) | 大整 数值 |
BIGINT | 8bytes | (-2^63,2^63-1) | (0,2^64-1) | 极大 整数值 |
FLOAT 0 和 单精 度浮 点数 值 | 4bytes | (-3.402823466 E+38, 3.402823466351 E+38) | (1.175494351 E-38,3.402823466 E+38) | 单精度浮 点数 值 |
DOUBLE | 8bytes | (-1.7976931348623157 E+308, 1.7976931348623157 E+308) | 0 和 (2.2250738585072014 E-308, 1.7976931348623157 E+308) | 双精度浮 点数 值 |
DECIMAL | 依赖于M(精度)和D(标度) 的值 | 依赖于M(精度)和D(标度)的 值 | 小数值(精 确定 点数) |
一般常用的是tinyint,int和double
如:
1). 年龄字段 -- 不会出现负数, 而且人的年龄不会太大
age tinyint unsigned
2).分数 -- 总分100分, 最多出现一位小数
score double(4,1)
- 字符串数据类型
char 与 varchar 都可以描述字符串
- char是定长字符串,指定长度多长,就占用多少个字符,和字段值的长度无关 。
- 而varchar是变长字符串,指定的长度为最大占用长度 。
- 相对来说,char的性能会更高些
因为是固定长度,很容易判断数据所占字节数。
如:
1). 用户名 username ------> 长度不定, 最长不会超过50
username varchar(50)
2). 性别 gender ---------> 存储值,
不是男,就是女 gender char(1)
3). 手机号 phone --------> 固定长度为11
phone char(11)
- 日期时间类型
如:
1). 生日字段 birthday
birthday date
2). 创建时间 createtime
createtime datetime
总结
本文介绍了三类数据类型,其中最常用的是tinyint,int,char,varchar,date,datetime
在创建表的时候,一定要划分好数据字段,否则会影响数据库!