MySQL 5.7 - 常见数据类型

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL 5.7 - 常见数据类型

数据类型是数据库的一个重要组成部分,在MySQL数据库中可将数据类型分为三大类:Text类型(文本类型)、Number类型(数字类型)、Date类型(日期类型)。

一、Text类型

Text类型为本文类型,也就是我们在编程中常说的字符串,同时由于可以进行序列化、反序列化等等的操作,我们甚至于可以直接将文件转换后存入数据库(但通常我们不会这样做)。

1. CHAR

  • 最大长度:255
  • 内容限制:字母、数字及特殊字母,正确设置编码后可以存入中文等字符
  • 特点:长度固定,占用空间较大,效率稍高

2. VARCHAR

  • 最大长度:255
  • 内容限制:字母、数字及特殊字母,正确设置编码后可以存入中文等字符
  • 特点:长度可变,需要同时记录数据本身和占用的空间大小,可适度节省磁盘空间,效率稍低

3. TINYTEXT

  • 最大长度:255
  • 内容限制:字母、数字及特殊字母,正确设置编码后可以存入中文等字符
  • 特点:存储方式上有所不同,不会和行数据存在一起

4. TEXT

  • 最大长度:65,535
  • 内容限制:字母、数字及特殊字母,正确设置编码后可以存入中文等字符
  • 其他相似类型
  • MEDIUMTEXT:最大长度为16,777,215
  • LONGTEXT:最大长度为4,294,967,295

5. BLOB

  • 最多存放:65,535字节
  • 内容限制:Binary Large OBjects(二进制长对象)
  • 其他相似类型
  • MEDIUMBLOB:最多存放16,777,215字节
  • LONGBLOB:最多存放4,294,967,295字节

6. ENUM

  • 最大个数:65,535
  • 内容限制:字符串类型,存储的数据只能是在ENUM中已罗列出的值,或为NULL

7. SET

  • 最大个数:64
  • 内容限制:字符串类型,存储的数据只能是在SET中已罗列出的值
  • 特点:可以存储进多个SET中已声明的元素,但是不会重复存入相同的元素

二、Number类

Number类型为数字类型,主要用于存储整数和小数,长度部分代表数据的最大位数,而不是最大值

1. TINYINT

  • 数据范围
  • 常规:-128 ~ 127
  • 无符号:0 ~ 255
  • 内容限制:整数

2. INT

  • 数据范围
  • 常规:-2,147,483,648 ~ 2,147,483,647
  • 无符号:0 ~ 4,294,967,295
  • 内容限制:整数
  • 相似类型
  • SMALLINT:-32768 ~ 32767 (常规),0 ~ 65535(无符号)
  • MEDIUMINT:-8,388,608 ~ 8,388,607(常规),0 ~ 16,777,215(无符号)

3. BIGINT

  • 数据范围
  • 常规:-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
  • 无符号:0 ~ 18,446,744,073,709,551,615
  • 内容限制:整数

4. FLOAT

  • 最大长度:4字节
  • 最长位数:255位(含小数)
  • 最大精度:7位
  • 内容限制:小数或整数

5. DOUBLE

  • 最大长度:8字节
  • 最长位数:255位(含小数)
  • 最大精度:15位
  • 内容限制:小数或整数

6. DECIMAL

  • 存储空间:根据指定位数而定
  • 最长位数:65位(含小数)
  • 最大精度:30位
  • 内容限制:小数或整数

三、Date类型

Date类型为日期类型,用于记录时间格式的数据。通常会以日期格式的字符串时间戳或部分日期信息的形式来进行记录。

1. DATE

  • 显示格式:YYYY-MM-DD
  • 起止范围:‘1000-01-01’ 到 ‘9999-12-31’

2. DATETIME

  • 显示格式:YYYY-MM-DD hh:mm:ss
  • 起止范围:‘1000-01-01 00:00:00’ 到 ‘9999-12-31 23:59:59’

3. TIMESTAMP

  • 显示格式:时间戳(长整形)
  • 起止范围:‘1970-01-01 00:00:01’ UTC 到 ‘2038-01-19 03:14:07’ UTC

4. TIME

  • 显示格式:hh:mm:ss 或 hhh:mm:ss
  • 起止范围:’-838:59:59’ 到 ‘838:59:59’

5. YEAR

  • 显示格式:YYYY
  • 起止范围:1901 到 2155,或0000
  • 备注:一般使用0,00,0000代表2000年,在严格模式下,0000是一个非法的值

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
30天前
|
关系型数据库 MySQL 数据库
MySQL数据库基础(数据库操作,常用数据类型,表的操作)
MySQL数据库基础(数据库操作,常用数据类型,表的操作)
33 5
|
1月前
|
存储 关系型数据库 MySQL
MySQL支持多种数据类型
MySQL支持多种数据类型
89 3
|
1月前
|
存储 关系型数据库 MySQL
什么是mysql的数据类型?
什么是mysql的数据类型?
44 2
|
1月前
|
存储 关系型数据库 MySQL
MySQL数据类型
MySQL数据类型
50 2
|
6月前
|
存储 关系型数据库 MySQL
MySQL数据类型详解及实例应用
MySQL数据类型详解及实例应用
|
5月前
|
存储 关系型数据库 MySQL
MySQL数据库的数据类型、语法和高级查询
MySQL数据库的数据类型、语法和高级查询
66 0
|
6月前
|
SQL 存储 关系型数据库
RDS for MySQL的SQL分类与数据类型
小明需在MySQL中管理商品信息,使用SQL完成业务操作。SQL分为DQL(查询)、DML(增删改)、DDL(定义)、DCL(权限控制)和TCL(事务)五大类。DDL用于创建、修改和删除数据库结构,DML处理数据,DCL控制权限,TCL管理事务,DQL则用于查询数据。MySQL有多种数据类型,如数值型(整数、小数)、日期型和字符串型等,选择合适的数据类型是高效开发的关键。
64 0
|
3月前
|
关系型数据库 MySQL Linux
数据类型和运算符(MySQL服务器的安装,MySQL客户端,数据类型,运算符,MySQL的语法规范)
无论是对于初学者还是有经验的开发者,了解MySQL的安装、客户端使用、数据类型、运算符和语法规范都是至关重要的。这不仅有助于高效地管理和查询数据,而且对于设计和实现数据库解决方案来说是基础工作。通过深入学习和实践这些知识,您可以更好地发挥MySQL数据库的强大功能。
32 2
|
3月前
|
存储 关系型数据库 MySQL
MySQL 中的 BLOB 数据类型深入解析
【8月更文挑战第31天】
373 0
|
3月前
|
存储 关系型数据库 MySQL