【MySQL】MySQL 的数据类型
2017-06-11 21:23
176 查看
MySQL 常用的数据类型
MySQL支持很多数据类型,大致上可以分成3类: 1. 数值类型 2. 日期和时间类型 3. 字符串类型
数值类型
1.整数型
类型 | 大小 | 范围(带符号) | 范围(无符号) | 描述 |
---|---|---|---|---|
TINYINT | 1 Byte (8bit) | -128~+127 | 0~255 | 极小整数 |
SMALLINT | 2 Byte (16bit) | -32768 ~ +32767 | 0 ~ 65535 | 小整数 |
MEDIUMINT | 3 Byte (24bit) | -8388608 ~ +8388607 | 0 ~ 16777215 | 中等整数 |
INT(INTEGER) | 4 Byte (32bit) | -2147483648 ~ +2147483647 | 0 ~ 4294967295 | 一般整数 |
BIGINT | 8 Byte (64bit) | -263 ~ +263 -1 | 0~ +264 -1 | 极大整数值 |
2.浮点型
类型 | 大小 | 范围(带符号) | 描述 |
---|---|---|---|
FLOAT | 4 Byte (32bit) | -3.402823466E+38 ~ -1.175494351E-38、 0、1.175494351E-38 ~ 3.402823466E+38 | 单精度浮点数值 |
DOUBLE | 8 Byte (64bit) | -1.7976931348623157E+308 ~ -2.2250738585072014E-308、 0、2.2250738585072014E-308 ~ 1.7976931348623157E+308 | 双精度浮点数值 |
DECIMAL | DECIMAL(M,D) 如果M>D,为 M+2 Byte 否则为 D+2 Byte | 依赖于M和D的值 | 依赖于M和D的值 |
float和
double只是不允许负数,并没有改变正数的范围。
日期和时间类型
类型 | 大小 | 范围 | 格式 | 描述 |
---|---|---|---|---|
YEAR | 1 Byte | 1901 ~ 2155 | YYYY | 年份值 |
DATE | 3 Byte | 1000-01-01 ~ 9999-12-31 | YYYY-MM-DD | 日期值 |
TIME | 3 Byte | -838:59:59 ~ 838:59:59 | HH:MM:SS | 时间值或持续时间 |
DATETIME | 8 Byte | 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 日期和时间值 |
TIMESTAMP | 4 Byte | 1970-01-01 00:00:00 ~ 2037-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 日期和时间值,时间戳 |
字符串类型
类型 | 长度 | 描述 |
---|---|---|
CHAR | 0 ~ 255 Byte | 定长字符串 |
VARCHAR | 0 ~ 65535 Byte | 变长字符串 |
BINARY | 0 ~ 255 Byte | 类似于CHAR类型,但保存二进制字节 字符串而不是非二进制字符串 |
VARBINARY | 0 ~ 65535 Byte | 类似于VARCHAR类型,但保存二进制字节 字符串而不是非二进制字符串 |
TINYBLOB | 0 ~ 255 Byte | 最大长度为255(2 8 –1)字节的BLOB列 |
TINYTEXT | 0 ~ 255 Byte | 最大长度为255(28–1)字符的TEXT列。 |
BLOB | 0 ~ 65535 Byte | 最大长度为65,535(216–1)字节的BLOB列。 |
TEXT | 0 ~ 65535 Byte | 最大长度为65,535(216–1)字符的TEXT列。 |
MEDIUMBLOB | 0 ~ 2 24 - 1 Byte | 最大长度为16,777,215(224–1)字节的BLOB列。 |
MEDIUMTEXT | 0 ~ 2 24 - 1 Byte | 最大长度为16,777,215(224–1)字符的TEXT列。 |
LONGBLOB | 0 ~ 2 32 - 1 Byte | 最大长度为4,294,967,295 或4GB(232–1)字节的BLOB列。 |
LONGTEXT | 0 ~ 2 32 - 1 Byte | 最大长度为4,294,967,295 或4GB(232–1)字符的TEXT列 |
ENUM(‘value1’,’value2’,…) | 0 ~ 2 Byte | 枚举类型。只能有一个值的字符串, 从值列’value1’,’value2’,…, NULL中或特殊 ”错误值中选出。 ENUM列最多可以有65,535个截然 不同的值。ENUM值在内部用整数表示。 |
SET(‘value1’,’value2’,…) | 0 ~ 1 Byte | 一个设置。字符串对象可以有零个 或多个值,每个值必须来自列值 ’value1’,’value2’,… SET列最多可以有64个成员。 SET值在内部用整数表示。 |
相关文章推荐
- MySQL数据类型(http://blog.csdn.net/i_like_cpp/)
- [转]MYSQL数据类型长度 常规的建库策略
- MySQL 的数据类型和建库策略
- mysql数据类型
- 基础知识:MySQL数据类型及列类型
- MySql 主键(自动增加)的数据类型所带来的错误
- mysql中DATETIME、DATE 和 TIMESTAMP 类型数据使用
- MYSQL数据类型长度 常规的建库策略
- MySQL5.0的三种数据类型:DATETIME, DATE和TIMESTAMP的使用
- MySQL的数据类型和建库策略
- MySQL基础入门-06MySQL的数据类型及列类型
- MYSQL的数据类型
- MySQL 数据类型
- MySQL数据类型
- MySQL查询优化--数据类型与效率
- MySQL查询优化系列讲座之数据类型与效率
- MySql与Java数据类型转换
- MySQL 的数据类型和建库策略
- MySQL存储引擎和数据类型
- mysql中应用blob类型的数据