SQL中数据类型有哪些类型?
数值型,字符型,日期时间型,字节型,货币型,其他特殊类型等。
接下来深海整理的表格中,字体加粗的数据类型为常用数据类型。
数值型
类型 | 大小(字节) | 范围 | 描述 | 类比Java类型 |
BIT | <=1 | (0,1) | 逻辑数值 | boolean |
TINYINT | 1 | (-128,127) | 极小整数值 | byte |
SMALLINT | 2 | (-32 768,32 767) | 小整数值 | short |
MEDIUMINT | 3 | (-8 388 608,8 388 607) | 中整数值 | short / 较小int |
INT / INTEGER | 4 | (-2 147 483 648,2 147 483 647) | 整数值 | int |
BIGINT | 8 | (-9 233 372 036 854 775 808, 9 223 372 036 854 775 807) | 大整数值 | long |
FLOAT | 4 | (-3.40E+38 ~ +3.40E+38) | 单精度浮点数值 | float |
DOUBLE | 8 | (-1.79E+308 ~ +1.79E+308) | 双精度浮点数值 | double |
DECIMAL | M>D? M+2:D+2 | 取决于M和D的值,D:小数位 M:数据的总长度(不含小数点) | 十进制精准数值 | 无 |
字符型
类型 | 大小(字节) | 描述 | 类比Java类型 |
CHAR | 0-255 | 定长字符串 | ≈String |
VARCHAR | 0-65535 | 变长字符串 | ≈String |
TINYTEXT | 0-255 | 短文本数据 | ≈String |
TEXT | 0-65 535 | 文本数据 | ≈String |
MEDIUMTEXT | 0-16 777 215 | 大文本数据 | ≈String |
LONGTEXT | 0-4 294 967 295 | 极大文本数据 | ≈String |
TINYBLOB | 0-255 | 短二进制文本 | ≈String.getBytes() |
BLOB | 0-65 535 | 二进制文本 | ≈String.getBytes() |
MEDIUMBLOB | 0-16 777 215 | 大二进制文本 | ≈String.getBytes() |
LONGBLOB | 0-4 294 967 295 | 极大二进制文本 | ≈String.getBytes() |
时间型
类型 | 大小(字节) | 范围(格林威治) | 格式 | 描述 |
YEAR | 1 | 1901 — 2155 | YYYY | 年份值 |
DATE | 3 | 1000-01-01 — 9999-12-31 | YYYY-MM-DD | 日期值 |
TIME | 3 | -838:59:59 — 838:59:59 | HH:MM:SS | 时间值 或 持续时间 |
DATETIME | 8 | 1000-01-01 00:00:00 — 9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 日期时间值混合 |
TIMESTAMP | 8 | 1970-01-01 00:00:00 — 2038-01-19 3:14:07 | YYYYMMDD HHMMSS | 日期和时间值的混合时间戳 |
分割线 ⬇
关于SQL的数据类型,深海先整理到这里,后需可能会进一步完善。
如果本文对您有帮助的话,欢迎点赞关注收藏哦!
您的支持就是深海前进的动力!一起加油!