mysql中数据类型与取值范围

在MySQL中,数据类型决定了数据在表中的存储方式以及可以存储的数据范围。以下是一些常见的数据类型及其取值范围:

数值类型

  1. 整数类型

    • TINYINT: 1字节,范围从-128到127(有符号)或从0到255(无符号)。
    • SMALLINT: 2字节,范围从-32,768到32,767(有符号)或从0到65,535(无符号)。
    • MEDIUMINT: 3字节,范围从-8,388,608到8,388,607(有符号)或从0到16,777,215(无符号)。
    • INT 或 INTEGER: 4字节,范围从-2,147,483,648到2,147,483,647(有符号)或从0到4,294,967,295(无符号)。
    • BIGINT: 8字节,范围从-9,223,372,036,854,775,808到9,223,372,036,854,775,807(有符号)或从0到18,446,744,073,709,551,615(无符号)。
  2. 浮点类型

    • FLOAT: 4字节,单精度浮点数。
    • DOUBLE: 8字节,双精度浮点数。
    • DECIMAL(M,N) 或 NUMERIC(M,N): 精确的小数值,M是数字的最大数(精度),N是小数点后的位数(标度)。

日期和时间类型

  1. DATE: 'YYYY-MM-DD'格式表示的日期。
  2. TIME: 'HH:MM:SS'格式表示的时间。
  3. DATETIME: 'YYYY-MM-DD HH:MM:SS'格式表示的日期和时间。
  4. TIMESTAMP: 'YYYY-MM-DD HH:MM:SS'格式表示的日期和时间,与UNIX时间戳相关。
  5. YEAR: 年份值,可以是两位或四位数字。

字符串类型

  1. CHAR(M): 固定长度的字符串,M是字符数。
  2. VARCHAR(M): 可变长度的字符串,M是最大字符数。
  3. TINYTEXT: 非常小的文本字符串。
  4. TEXT: 文本字符串。
  5. MEDIUMTEXT: 中等长度的文本字符串。
  6. LONGTEXT: 长文本字符串。
  7. BINARY(M): 固定长度的二进制字符串。
  8. VARBINARY(M): 可变长度的二进制字符串。
  9. TINYBLOB: 非常小的BLOB。
  10. BLOB: BLOB(Binary Large Object)。
  11. MEDIUMBLOB: 中等大小的BLOB。
  12. LONGBLOB: 大的BLOB。
  13. ENUM('value1','value2',...): 枚举类型,只能有一个预定义的值。
  14. SET('value1','value2',...): 集合类型,可以有零个或多个预定义的值。

空间类型

这些类型用于地理空间数据,如点、线和多边形。

JSON类型

MySQL 5.7.8及更高版本支持JSON数据类型,用于存储JSON格式的数据。

每种数据类型都有其特定的用途和限制,选择合适的数据类型对于优化数据库性能、减少存储需求以及确保数据的完整性和准确性至关重要。在设计数据库时,应该根据实际应用的需求来选择合适的数据类型。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

test猿

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

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

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

打赏作者

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

抵扣说明:

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

余额充值