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 ...
随机推荐
- 秦皇岛CCPC的失败总结
个人状态原因:尤其是我,在比赛前没有很好的做准备,还一直看小说,前两天我们本来应该好好打两场训练赛的时候却没有打,然后一直在玩手机,比赛前一天,我下午就不小心睡着了,然后晚上醒来睡不着第二天的精神状态 ...
- 牛客练习赛 23 C 托米的位运算
链接:https://www.nowcoder.com/acm/contest/156/C来源:牛客网 托米完成了1317的上一个任务,十分高兴,可是考验还没有结束 说话间1317给了托米 n 个自然 ...
- Linux文件系统命令 touch/rm
命令:touch 功能:创建文件,后接相对路径或者绝对路径 eg: touch ./ren/jin/gui.txt 命令:rm 功能:删除文件,当删除的是目录的时候要加-R参数进行递归删除. eg: ...
- <Spark><Spark Streaming>
Overview Spark Streaming为用户提供了一套与batch jobs十分相似的API,以编写streaming应用 与Spark的基本概念RDDs类似,Spark Streaming ...
- shell脚本实例-while实现批量创建用户
#!/usr/bin/bash while read line #读取一行结果 do if [ ${#line} -eq 0 ];then #如果有空行的话就跳过这次循环 contiune fi us ...
- jq动态添加onclick事件在谷歌中不起作用
$("#oa-bed-rooType").append($('<option/>').val(0).text('请选择房间类型')); $('#oa-bed-roomT ...
- 团队-团队编程项目爬取豆瓣电影top250-代码设计规范
1.类名使用首字母大写(骆驼命名法) 2.函数名应该为小写 3.用下划线开头定义私有的属性或方法 4.命名要使用有意义的,英文单词或词组 5.行尾不加分号 6.4个空格缩进代码 7.操作运算符注意优先 ...
- mysql储存引擎
Mysql数据库常用存储引擎 数据库存储引擎:是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建.查询.更新和删除数据.不同的存储引擎提供不同的存储机制.索引技巧.锁定水平等功能,使 ...
- Day7作业及默写
1. 判断一个数是否是水仙花数, 水仙花数是一个三位数, 三位数的每一位的三次方的和还等于这个数. 那这个数就是一个水仙花数. 例如: 153 = 1**3 + 5**3 + 3**3 InputNu ...
- mysql随机查询记录的高效率方法
mysql使用rand随机查询记录的高效率方法 一直以为mysql随机查询几条数据,就用 SELECT * FROM `table` ORDER BY RAND() LIMIT 5 就可以了. 但是真 ...