MySQL 的数据类型,有哪些?
table th:first-of-type {
width: 100px;
}
- MySQL数据类型选择指南:https://www.awaimai.com/1146.html
实数:
| 数据类型 | 多少个字节 | 范围(有符号) | 范围(无符号) | 默认值可设置为 | 是否必须指定 length |
|---|---|---|---|---|---|
| TINYINT | 1 | (-128,127) | (0,255) | '0' | 可指定 length |
| SMALLINT | 2 | (-32 768,32 767) | (0,65 535) | '0' | 可指定 length |
| MEDIUMINT | 3 | (-8 388 608,8 388 607) | 0 ~ 16 777 215(1677 万) | '0' | 可指定 length |
| INT 或 INTEGER | 4 | (-2 147 483 648,2 147 483 647) | 0 ~ 4 294 967 295(42 亿) | '0' | 可指定 length |
| BIGINT | 8 | (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) | 0 ~ 18 446 744 073 709 551 615(1844 亿亿,18446兆(一万亿等于一兆,亿亿就是:十兆;)) | '0' | 可指定 length |
复数:
| 数据类型 | 多少个字节 | 范围(有符号) | 范围(无符号) | 默认值可设置为 | 是否必须指定 length,decimals |
|---|---|---|---|---|---|
| FLOAT | 4(MySQL 数据类型(float)的注意事项) | (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) | 0,(1.175 494 351 E-38,3.402 823 466 E+38) | 可指定 | |
| DOUBLE | 8 | (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) | 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) | 可指定 | |
| DECIMAL | DECIMAL(M总数字个数,D小数个数) ,每4个字节存9个数字,小数点占1个字节; 例如,DECIMAL(18,9)小数点两边各存储9个数字,所以小数点两边各占用4个字节,再加上小数点本身占用1个字节,总共占用9个字节。 |
依赖于M和D的值 | 依赖于M和D的值 | 可指定 | |
| REAL | 可指定 | ||||
| NUMERIC | 可指定 |
字符串类型(char(n)、varchar(n) 中的n,在新版中是指:字符长度)
| 数据类型 | 大小 | 默认值可设置为 | 是否必须指定 length |
|---|---|---|---|
| CHAR | 0-255 字节 | '' | 可指定 length |
| VARCHAR | 0-65535 字节 | '' | 必须指定 length |
二进制字符串类型(BINARY 和 VARBINARY 存储的是二进制字符串,与字符集无关;BINARY(n)、VARBINARY(n) 中的n,指的是:字节长度)
| 数据类型 | 大小 | 默认值可设置为 | 是否必须指定 length |
|---|---|---|---|
| BINARY | 0-255 字节 | 可指定 length | |
| VARBINARY | 0-65535 字节 | 必须指定 length |
TEXT 类型(长文本数据)
| 数据类型 | 大小 | 默认值可设置为(BLOB 和 TEXT 都不能有默认值) | 是否必须指定 length |
|---|---|---|---|
| TINYTEXT | 0-255 字节 | 不能有默认值 | 不能指定 length |
| TEXT | 0-65535 字节 | 不能有默认值 | 可指定 length |
| MEDIUMTEXT | 0-16 777 215字节(1677 万字节) | 不能有默认值 | 不能指定 length |
| LONGTEXT | 0-4 294 967 295字节(42 亿字节) | 不能有默认值 | 不能指定 length |
BLOB 类型(二进制形式的长文本数据)
| 数据类型 | 大小 | 默认值可设置为(BLOB 和 TEXT 都不能有默认值) | 是否必须指定 length |
|---|---|---|---|
| TINYBLOB | 0-255 字节 | 不能有默认值 | 不能指定 length |
| BLOB | 0-65535 字节 | 不能有默认值 | 可指定 length |
| MEDIUMBLOB | 0-16 777 215字节(1677 万字节) | 不能有默认值 | 不能指定 length |
| LONGBLOB | 0-4 294 967 295字节(42 亿字节) | 不能有默认值 | 不能指定 length |
日期和时间类型
| 类型 | 大小(字节) | 范围 | 格式 | 默认值可设置为 | 是否必须指定 fsp |
|---|---|---|---|---|---|
| DATE | 3 | 1000-01-01 ~ 9999-12-31 | YYYY-MM-DD | 不能指定 | |
| TIME | 3 | -838:59:59 ~ 838:59:59(此范围原因: https://www.oschina.net/question/195038_183439 , https://dev.mysql.com/doc/refman/8.0/en/time.html , https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_sec-to-time) |
HH:MM:SS | 可指定 | |
| YEAR | 1 | 1901 ~ 2155 | YYYY | 不能指定 | |
| DATETIME | 8 | 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59 (DATETIME 存储的是整数,与时区无关) (以'YYYY-MM-DD HH:MM:SS'还是YYYYMMDDHHMMSS格式返回当前的日期和时间,取决于函数是在一个字符串还是在数字的上下文被使用) |
YYYY-MM-DD HH:MM:SS | 可指定 | |
| TIMESTAMP | 4 | 1970-01-01 00:00:00 ~ 2038-01-19 结束时间是第 2147483647 秒(此数计算方法:2的31次方减1), 北京时间:2038-1-19 11:14:07, 格林尼治时间:2038年1月19日 凌晨 03:14:07 (TIMESTAMP 存储是UTC时间戳,与时区相关;具体的时分秒,不同的时区有不同的值) (以'YYYY-MM-DD HH:MM:SS'还是YYYYMMDDHHMMSS格式返回当前的日期和时间,取决于函数是在一个字符串还是在数字的上下文被使用) (推荐用 TIMESTAMP:TIMESTAMP 使用 DATETIME 一半的空间;能保存时区;拥有特殊的自动更新能力) |
YYYYMMDD HHMMSS | DEFAULT '0000-00-00 00:00:00' 或 DEFAULT CURRENT_TIMESTAMP 或 DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP (说明: CURRENT_TIMESTAMP 等价于:CURRENT_TIMESTAMP(), NOW(), LOCALTIME, LOCALTIME(), LOCALTIMESTAMP, LOCALTIMESTAMP()) |
可指定 |
BIT 类型
| 数据类型 | 大小 | 默认值可设置为 | 是否必须指定 length |
|---|---|---|---|
| BIT | 可指定 length |
ENUM、SET
| 数据类型 | 大小 | 设置值 |
|---|---|---|
| ENUM | ENUM(value1,value2,value3,...) |
|
| SET | SET(value1,value2,value3,...) |
JSON 类型(从 MySQL 5.7.8 开始支持)
| 数据类型 | 大小 | 默认值可设置为 | 是否必须指定 length |
|---|---|---|---|
| JSON | 不能指定 length |
MySQL 的数据类型,有哪些?的更多相关文章
- MySQL数据库3 - MySQL常用数据类型
一. MySql常用数据类型 数据类型:整数(tinyint smailint int bigint) 定点数 decimal(p,s) ------ 小数点位置固定的 ---> 数 ...
- Mysql常用数据类型
Mysql常用数据类型 数字: 字符串: 时间:
- MySQL日期数据类型、时间类型使用总结
MySQL日期数据类型.时间类型使用总结 MySQL日期数据类型.MySQL时间类型使用总结,需要的朋友可以参考下. MySQL 日期类型:日期格式.所占存储空间.日期范围 比较. 日期类型 ...
- MySQL日期数据类型、MySQL时间类型使用总结
MySQL:MySQL日期数据类型.MySQL时间类型使用总结 MySQL 日期类型:日期格式.所占存储空间.日期范围 比较. 日期类型 存储空间 日期格式 日期范围 ------------ --- ...
- MySQL数据库数据类型之集合类型SET测试总结
MySQL数据库提供针对字符串存储的一种特殊数据类型:集合类型SET,这种数据类型可以给予我们更多提高性能.降低存储容量和降低程序代码理解的技巧,前面介绍了首先介绍了四种数据类型的特性总结,其后又分别 ...
- mysql 的数据类型
mysql 的数据类型(描述的是字段)三大类:一.整型:1.tinyint(M),其中M是显示宽度,需要配合zerofill,就是前面0填充,存储单位为1个字节(8位),无符文是最大能存储范围0000 ...
- MySQL的数据类型(转)
MySQL的数据类型 1.整数 TINYINT: 8 bit 存储空间 SMALLINT: 16 bit 存储空间 MEDIUMINT: 24 bit 存储空间 INT: 32 bit 存储空间 BI ...
- mysql之数据类型
一.概述: 所谓建表,就是声明列的过程: 数据是以文件的形式放在硬盘中(也有放在内存里的) 列:不同的列类型占的空间不一样 选列的原则:够用又不浪费: 二.mysql的数据类型: 整形:Tinyin ...
- MySQL/MariaDB数据类型
1.为什么要定义MySQL数据类型 定义MySQL数据类型其实就是为了对数据进行分类,实现对不同的分类进行不同的处理 1.使系统能够根据数据类型来操作数据. 2.预防数据运算时出错.例如,通过强大的数 ...
- mysql的数据类型和字段属性
本文内容: 数据类型 数值类型 整数型 浮点型 定点型 日期时间类型 字符串类型 补充: 显示宽度与zerofll 记录长度 字段属性 空\不为空值:NULL.NOT NULL 主键:primary ...
随机推荐
- Docker(4):Dockerfile命令一览
1.FROM 指定基础镜像 FROM 指令用于指定其后构建新镜像所使用的基础镜像.FROM 指令必是 Dockerfile 文件中的首条命令,启动构建流程后,Docker 将会基于该镜像构建新镜像,F ...
- 杭电多校第四场 E Matrix from Arrays
Problem E. Matrix from Arrays Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 262144/262144 ...
- FutureTask
因为实现了runnable接口,所以重写了run方法 Future接口如果用在多线程中,实现类一般是有一个volatile的属性,用来标志状态,比如state,如果事情做完了,那么会设置state为成 ...
- Oracle中把一张表查询结果插入到另一张表中
1. 新增一个表,通过另一个表的结构和数据 create table XTHAME.tab1 as select * from DSKNOW.COMBDVERSION 2. 如果表存在: inse ...
- iframe 常见问题 解析
1. jquery在iframe子页面获取父页面元素代码如下: $("#objid",parent.document) 2. jquery在父页面获取iframe子页面的元素代码如 ...
- 继承映射中的java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: person is not mapped [FROM person]
继承映射中查询对象的过程中报错: java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxExcep ...
- STP实验(指定特定交换机为根桥)
实验要求:将三层交换机设置为根桥交换机,并查看 拓扑如下: 涉及内容有: 1.根桥交换机的选举方式 2.生成树修改优先级成为根桥交换机 3.生成树直接指定根桥交换机 根桥交换机是根据优先级和MAC地址 ...
- opengl库学习
http://www.cppblog.com/doing5552/archive/2009/01/08/71532.html http://blog.csdn.net/wolf96/article/d ...
- SQL Server导入导出表及备份恢复
1. 导出: 2. 导入
- FTP相关、用vsftpd搭建ftp、xshell使用xftp传输文件、使用pure-ftpd搭建ftp服务
1.FTP相关(file transfer protocol,文件传输协议) 2.用vsftpd搭建ftp安装:yum install vsftpd -y创建一个虚拟用户:useradd vft ...