MySQL:常用数据类型

专栏说明:本专栏用于MySQL学习,如对你学习有所帮助,可以点赞收藏关注,感谢三连。


  • 博客主页:Duck Bro 博客主页
  • 系列专栏:MySQL数据库
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

MySQL:常用数据类型

目录

  • MySQL:常用数据类型
    • [1. 数值类型](#1. 数值类型)
      • [1.1 整型](#1.1 整型)
      • [1.2 浮点型](#1.2 浮点型)
      • [1.3 扩展资料](#1.3 扩展资料)
    • [2. 字符串类型](#2. 字符串类型)
    • [3. 日期类型](#3. 日期类型)

1. 数值类型

1.1 整型

数据类型 大小 说明 对应Java类型
BIT[ (M) ] M指定位数,默认为1 二进制数,M范围从1到64,存储数值范围从0到2^M-1 常用Boolean对应BIT,此时默认是1位,即只能存0和1
TINYINT 1字节 Byte
SMALLINT 2字节 Short
INT 4字节 Integer
BIGINT 8字节 Long

1.2 浮点型

数据类型 大小 说明 对应Java类型
FLOAT(M, D) 4字节 单精度,M指定长度,D指定小数位数。会发生精度丢失 Float
DOUBLE(M,D) 8字节 Double
DECIMAL(M,D) M/D最大值+2 双精度,M指定长度,D表示小数点位数。精确数值 BigDecimal
NUMERIC(M,D) M/D最大值+2 和DECIMAL一样 BigDecimal

1.3 扩展资料

数值类型可以指定为无符号(unsigned),表示不取负数。

sql 复制代码
  1字节(bytes)= 8bit。

对于整型类型的范围:

  1. 有符号范围:-2(类型字节数*8-1)到2(类型字节数*8-1)-1,如int是4字节,就 是-231到231-1
  2. 无符号范围:0到2(类型字节数*8)-1,如int就是232-1

注意:尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。


2. 字符串类型

数据类型 大小 说明 对应Java类型
VARCHAR (SIZE) 0-65,535字节 可变长度字符串 String
TEXT 0-65,535字节 长文本数据 String
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据 String
BLOB 0-65,535字节 二进制形式的长文本数据 byte[]

3. 日期类型

数据类型 大小 说明 对应Java类型
DATETIME 8字节 范围从1000到9999年,不会进行时区的检索及转换。 java.util.Date、java.sql.Timestamp
TIMESTAMP 4字节 范围从1970到2038年,自动检索当前时区并进行转换。 java.util.Date、java.sql.Timestamp

相关推荐
间彧4 分钟前
DateTimeFormatter相比SimpleDateFormat在性能上有何差异?
java
间彧15 分钟前
为什么说SimpleDateFormat是经典的线程不安全类
java
MacroZheng23 分钟前
横空出世!MyBatis-Plus 同款 ES ORM 框架,用起来够优雅!
java·后端·elasticsearch
用户0332126663671 小时前
Java 查找并替换 Excel 中的数据:详细教程
java
间彧1 小时前
ThreadLocal实现原理与应用实践
java
若水不如远方1 小时前
Netty的四种零拷贝机制:深入原理与实战指南
java·netty
感哥1 小时前
C++ STL 常用算法
c++
用户7493636848431 小时前
【开箱即用】一分钟使用java对接海外大模型gpt等对话模型,实现打字机效果
java
Raymond运维1 小时前
MariaDB源码编译安装(二)
运维·数据库·mariadb
SimonKing2 小时前
一键开启!Spring Boot 的这些「魔法开关」@Enable*,你用对了吗?
java·后端·程序员