MySQL 数据(字段)类型

本文详细介绍了MySQL中的各类数据类型,包括数值类型、字符串类型、时间日期类型等,并提供了每种类型的使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MySQL 数据(字段)类型

在创建表的时候,要明确定义字段对应的数据类型。MySQL 主要的数据类型分为数值类型、字符串(文本)类型、时间日期类型和其他类型几类。

数值类型

数值类型说明:
类型 说明 例子
tinyint 存储范围:-128至127或0至255 tinyint(1)
smallint 存储范围:-32768至32767或0至65535 smallint(3)
mediumint 存储范围:- 8388608至8388607或0至16777215 mediumint(5)
int 存储范围:- 2147483648至2147483647或0至4294967295 int(10)
bigint 存储范围:- 9223372036854775808至9223372036854775807或0至18446744073709551615 bigint(10)
float 最小非零值:±1.175494351E – 38,同double一样适用于精度要求高的场合 float(3,1)
double 最小非零值:±2.2250738585072014E - 308 double(10,5)
decimal 取值范围可变,以来括号内的显示尺寸和小数点位数而定,适用于对精度要求不高但准确度要求非常高的场合 decimal(10,2)

补充说明

  1. 在 int(integer) 系列中,只能存储整型值,且可以在后面用括号指定显示的尺寸(M),如果不指定则会默认分配。如果实际值的显示宽度大于设定值,将会显示实际值而不会截断以适应显示尺寸。如 smallint(3) 中的 3 即为显示尺寸,即显示三位的数值(不包括 - 号)
  2. int 类型可以指定 UNSIGNED 属性,即无符号(非负),所以存储范围有两种
  3. 在 float、double 及 decimal 类型中,不能指定 UNSIGNED 属性,其显示尺寸包含了小数点精度(D),即 float(3,1) 保存范围为 -99.9 至 99.9
  4. decimal 必须指定显示尺寸(M)和小数点精度(D),float 和 double 都是可选的
  5. 在可能涵盖取值范围的基础上,尽可能选择较小的类型以提高效率和节约存储空间,如年龄,就选择 tinyint(3) 。该原则对于字符类型同样适用

字符串(文本)类型

字符串(文本)类型说明:
类型 说明 例子
char 支持固定长度的字符串, 最大长度是 255 个字符 char(100)
varchar 支持可变长度的字符串, 最大长度是 65535 个字符 varchar(1000)
tinytext 支持可变长度的字符串,最大长度是 255 个字符 tinytext
text
blob
支持可变长度的字符串,最大长度是 65535 个字符 text
mediumtext
mediumblob
支持可变长度的字符串,最大长度是 16777215 个字符 mediumtext
longtext
longblob
支持可变长度的字符串,最大长度是 4294967295 个字符 longtext
enum 枚举类型,可存储最多65535 个成员,常用于取值是有限而且固定的场合 enmu("男","女")
set 集合类型,可存储最多64个成员 set("value1","value2", ...)

补充说明

char 和 varchar需要指定长度,不同的是,char 存储时总是按照指定的长度储存,而 varchar 则根据实际字符串长度再加上一个字节分配空间。

时间日期类型

时间日期类型说明:
类型 说明 例子
date YYYY-MM-DD 格式表示的日期值 date
time hh:mm:ss 格式表示的时间值 time
datetime YYYY-MM-DD hh:mm:ss 格式表示的日期和时间值 datetime
timestamp YYYYMMDDhhmmss 格式表示的时间戳值 timestamp
year YYYY 格式表示的年份值 year

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值