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

相关推荐
星恒随风7 小时前
MySQL 从零入门(五):MySQL 内置函数详解——日期、字符串、数学函数与实战案例
linux·数据库·笔记·sql·mysql
金銀銅鐵8 小时前
带您看懂字节码指令(二):空循环里有什么
java·后端·ai编程
吴名氏.9 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
爱码少年9 小时前
Springboot下如何将CSV文件数据导入H2、Mysql数据库表
数据库·mysql·csv
.痞老板.10 小时前
java ee--多线程(进阶)
java·java-ee
2603_9696948510 小时前
【JavaWeb学习记录】MyBatis核心知识点与实战笔记:从入门到动态SQL
笔记·sql·学习·mysql·mybatis·javaweb·学习方法
可乐ea11 小时前
智能体记忆该拆成几层:笔记、记忆表示与注入上下文
服务器·数据库·笔记·ai智能体·提示词工程·上下文工程·记忆系统
深入云栈12 小时前
Netty 4.2.x 源码深度解析 (二十三):ByteBuf 核心设计 —— 索引、类型与零拷贝
java·后端·架构
阿义有问题12 小时前
MySQL 迁移达梦全流程实战:DTS 七步图解 + 对象名全大写适配(附踩坑清单)
数据库
wang_shu_mo_ran13 小时前
MyBatis 从入门到进阶(一)
java·spring·mybatis