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

相关推荐
一只幸运猫.2 小时前
JAVA后端面试题
java·开发语言
看海的四叔2 小时前
【SQL】SQL-管好你的字符串
大数据·数据库·hive·sql·数据分析·字符串
空中海2 小时前
第三章:Maven高级篇 — 插件开发与多模块工程
java·maven
BirdenT2 小时前
20260424紫题训练
c++·算法
秋92 小时前
TiDB 数据库全链路实战指南:从下载部署到 Java 高并发调优
java·数据库·tidb
还是阿落呀2 小时前
基本控制结构
开发语言·c++·算法
zhou周大哥3 小时前
银河麒麟安装mysql
数据库·mysql
JAVA面经实录9173 小时前
Java开发工程基础完整手册(企业实战完整版)
java·开发语言·git·ci/cd·svn·github·intellij idea
李艺为3 小时前
Fake Device Test作假屏幕分辨率分析
android·java
样例过了就是过了3 小时前
LeetCode热题100 最长有效括号
c++·算法·leetcode·动态规划