打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
MySQL 02:常用数据类型

主要的数据类型,包括字符串、数值、日期时间

数值型

INT就是整数类型,根据允许的数值大小分为以下类型(由小到大),这样做的目的是节约空间

INT类型范围(有符号)范围(有符号)
TINYINT(-2^7, -2^7-1)(0,2^8-1)
SMALLINT(-2^15, -2^15-1)(0,2^16-1)
MEDIUMINT(-2^24, -2^24-1)(0,2^24-1)
INT(-2^32, -2^32-1)(0,2^32-1)
BIGINT(-2^64, -2^64-1)(0,2^64-1)

FLOAT就是小数,根据精度不同(小数点后位数不同),可以分为一下几类

FLOAT类型
FLOAT单精度
DOUBLE双精度
DECIMAL(M,D)保留几位小数

注:

  1. DECIMAL(3,1)表示总为有 3 位数字,小数点后1位,所以范围是[-99.9, 99.9]
  2. 默认数值是有符号的,即有正有负,如果限定数据为非负,需要加上UNSIGNED关键字

字符串

  • 二进制字符串

二进制字符串主要用于存储二进制数据,包括图片、音频、视频等。

Type长度
TINYBLOB≤ 2^8-1
BLOB≤ 2^16-1
MEDIUMBLOB≤ 2^24-1
LONGBLOB≤ 2^32-1
  • 普通字符串
Type长度说明
CHAR(n=1)[1,2^8-1]定长
VARCHAR(n)[1,2^8-1]不定长
TINYTEXT≤ 2^8-1不定长
TEXT≤ 2^16-1不定长
MEDIUMTEXT≤ 2^24-1不定长
LONGTEXT≤ 2^32-1不定长
ENUM≤ 2^16-1单选或不选
SET2^6多选

CHAR可以设置长度,默认是 1,当实际输入<设定的位数时,在输入字符右边增加空格,以达到定长的目的。如果当实际输入>设定的位数时,则截断超出部分。

VARCHAR必须设置长度,如果当实际输入>设定的位数时,则截断超出部分;当实际输入<设定的位数时,则显示实际长度。

ENUM从一个集合中选择一个字符串或者为 NULL,比如性别栏可以设置成仅允许["Male", "Female", "Prefer not to say"]

SET可以给定的集合中选择多个字符串,比如 SET("足球", "篮球", "羽毛起", "乒乓球")

日期时间

Type范围格式
DATE1000-01-01 到 9999-12-31YYYY-MM-DD(年月日)
TIME-838:59:59 到 838:59:59HH::MM::SS(时分秒)
YEAR1901到2155YYYY(年)
DATETIME1000-01-01 00:00:00到
9999-12-31 23:59:59
YYYY-MM-DD HH::MM::SS(年月日时分秒)
TIMESTAMP1970-01-01 00:00:01 到
2038-01-19 03:14:07
YYYY-MM-DD HH::MM::SS(年月日时分秒)

时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
MySQL 数据类型
S7-1200 1500 指令说明配方数据块的结构
MySQL数据库实操教程(04)——数据类型详解
MySQL 数据类型 | 菜鸟教程
Oracle8 数据类型
MySQL 从零开始:05 数据类型
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服