mysql数据类型

MySQL数据类型详解(全网最全)

1、数据类型之间的关系

第1节的目的:就是在看这篇博客之前迅速熟悉这些数据类型的关键字,以至于不会对这些数据类型感到很陌生,这样做的好处就是能够更容易的往后面读,以至于不会产生抵触。我这么细节还不给个三连~

char&varcharbinary$varbinary

在这里插入图片描述

blobtext

在这里插入图片描述

整型和浮点型

在这里插入图片描述

2、数据类型详解

2.1、基础知识

字符(char)

字节(byte)

  • 一个字节等于八比特位(bit)
  • 假设声明一个字段位int 型,那么这个字段就占4个字节,也就是4*8=32比特位,因此该字段的取值范围就是(-231~231);如果被unsign zerofill 修饰,那么取值范围就是(0~2^32)

2.1、字符串类型

类型范围(字节)说明
char0~255长度固定;超出指定范围进行截取,没有超出指定范围以空格进行填充
varchar0~65535varchar(20)修饰某个字段时,指的是只能存放20个字符;可以自定义长度且长度可变
blob0~65535(2^16-1)“二进制对象”一般用来存储字节文件,比如图片、音乐等
tinyblob0~255(2^8-1)
mediumblob0~16772150(2^24-1)
longblob0~4294967295(2^32-1)
text0~65535(2^16-1)一般用来存储文本内容,无需指定大小
tinytext0~255(2^8-1)
mediumtext0~16772150(2^24-1)
longtext0~4294967295(2^32-1)

数值类型

类型范围精度大小说明
tinyint-128~1271个字节
smallint-32768~327672个字节
mediumint-8388608~83886073个字节
int-231~231-14个字节unsigned:无符号数,一般常用来扩大范围
bigint-263~263-18个字节
float大约6~9位数字4个字节
real
double大约15~17位数字8个字节
decimal大约28~29位数字
numeric

日期类型

类型格式说明
timeHH:mm:ss时:分:秒
timestamp毫秒数时间戳,从1970年0时0分0秒
dateYY:MM:dd年:月:日
datetimeYY:MM:dd HH:mm:ss年:月:日:时:分:秒(最常用时间格式)
yearYY只返回年份

布尔类型

类型范围说明
boolean取值:true、false
bool取值:1、0

二进制数据类型

类型范围(字节)说明
binary0~8000二进制数据类型;它们二者之间的区别和char和varchar类似;
varbinary0~8000定义时需要指定长度
bit

特殊类型

类型范围说明
enum
set
json

2、数据类型之间的区别

2.1、字符串类型

char和varchar之间的区别

  • char牺牲空间换时间
    • char类型长度固定:没有超出指定长度,以空格补充;超出指定长度,超出部分截掉
  • varchatr牺牲时间换空间
    • varchar长度可变,即使指定了字符的多少数量,也可以比指定的数量少(伸缩性)
  • 因此:char存取效率高于varchar,varchar空间利用率高于char

blob和text的区别

想提的问题

int(10)、char(10)、varchar(10) 中的数字10是什么意思?

  • int(10) :这里的数字10并不是表示修饰字段的范围大小,而仅仅表示显示的数值的宽度(也可以说是数值位数)
  • char(10)和varchar(10) :这里的数字10表示可存储的字符的多少(mysql5.0以上,char(10)和varchar(10) 中的10都表示10个字符,也就是说无论存储字母数字还是汉字都能存储10个)

int(10)和int(10) 的区别

  • 考察这里的数字“10”表示的是什么意思
  • 再加上int整型类型的取值范围即可得到答案
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凉水不好喝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值