全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📝 1 篇文章 20 道配套习题

MySQL数据类型

专题说明

本专题全面介绍MySQL各类数据类型的特点与选择策略,帮助初学者理解不同类型的存储范围、占用空间和适用场景,为数据库表设计打下坚实基础。

学习目标

  1. 理解数据类型的作用与分类
  2. 掌握整数类型(TINYINT/INT/BIGINT)的选择
  3. 理解浮点数与定点数的区别
  4. 掌握字符串类型(CHAR/VARCHAR/TEXT)的使用
  5. 学会日期时间类型的应用场景
  6. 理解ENUM与SET特殊类型

学习内容

本专题涵盖以下核心知识点:

  • 数据类型概述:数据类型的作用、分类体系、选择原则
  • 整数类型:TINYINT/SMALLINT/MEDIUMINT/INT/BIGINT范围与存储
  • 浮点数类型:FLOAT/DOUBLE/DECIMAL精度与存储差异
  • 字符串类型:CHAR/VARCHAR/TEXT/BLOB特点与选择
  • 日期和时间类型:DATE/TIME/DATETIME/TIMESTAMP/YEAR用途
  • 枚举与集合类型:ENUM单选、SET多选、使用场景

学习建议

  1. 理解每种类型的存储范围和空间占用
  2. 根据业务需求选择最合适的类型
  3. 整数优先选择满足范围的最小类型节省空间
  4. 字符串VARCHAR比CHAR更常用,但固定长度用CHAR
  5. 金额类数据必须用DECIMAL避免精度丢失
  6. 时间戳考虑时区问题选择TIMESTAMP或DATETIME

📝 发现内容有误?点击此处直接编辑

📝 配套习题(20 题)

1
单选题

MySQL中数据类型的作用是什么?

A

只是为了美观

B

定义列可以存储的数据种类和范围,保证数据正确性

C

加快删除速度

D

减少存储空间

2
判断题

MySQL的数据类型主要分为数值类型、字符串类型、日期时间类型等几大类。

A

B

3
单选题

MySQL中INT类型可以存储什么数据?

A

小数

B

整数

C

字符串

D

日期

4
单选题

存储年龄(0-150范围)应该选择什么整数类型?

A

BIGINT

B

INT

C

TINYINT

D

VARCHAR

5
判断题

BIGINT类型用于存储非常大的整数,适合存储如订单ID、用户ID等可能超过INT范围的大数值。

A

B

6
单选题

MySQL中FLOAT和DOUBLE类型的区别是什么?

A

没有区别

B

DOUBLE精度更高,可以存储更大范围的浮点数

C

FLOAT精度更高

D

FLOAT只能存整数

7
单选题

存储商品价格(如99.99元)应该使用什么数据类型?

A

FLOAT

B

DOUBLE

C

DECIMAL

D

INT

8
判断题

FLOAT和DOUBLE存在精度损失问题,不适合用于金额、财务等需要精确计算的场景。

A

B

9
单选题

VARCHAR类型的特点是什么?

A

固定长度字符串

B

可变长度字符串,只占用实际需要的存储空间

C

只能存数字

D

只能存日期

10
单选题

CHAR和VARCHAR的主要区别是什么?

A

没有区别

B

CHAR固定长度,VARCHAR可变长度

C

CHAR存数字,VARCHAR存文字

D

CHAR更快,VARCHAR更慢

11
判断题

TEXT类型用于存储长文本内容,如文章内容、商品详情等大量文字。

A

B

12
单选题

MySQL中DATE类型用于存储什么数据?

A

只有时间

B

只有日期(年-月-日)

C

日期和时间

D

只有年份

13
单选题

DATETIME和TIMESTAMP的区别是什么?

A

没有区别

B

DATETIME范围更大不受时区影响,TIMESTAMP受时区影响范围较小

C

DATETIME只存日期

D

TIMESTAMP只存时间

14
判断题

使用NOW()函数可以获取当前的日期和时间,常用于插入当前时间到DATETIME或TIMESTAMP字段。

A

B

15
单选题

ENUM类型的特点是什么?

A

可以存储任意字符串

B

只能存储预定义的几个值中的一个

C

可以存储多个值

D

只能存储数字

16
单选题

SET类型与ENUM类型的区别是什么?

A

没有区别

B

ENUM只能存一个值,SET可以存多个值(从预定义列表中选择)

C

SET只能存一个值

D

ENUM可以存多个值

17
判断题

ENUM类型内部使用整数存储,每个枚举值对应一个数字索引,这使得ENUM存储空间非常小。

A

B

18
多选题

以下哪些场景适合使用ENUM或SET类型?

A

用户性别(男/女)适合ENUM

B

订单状态(待支付/已支付/已发货/已完成)适合ENUM

C

用户兴趣爱好(多选)适合SET

D

用户地址适合ENUM

E

商品标签(多选)适合SET

19
填空题

MySQL数据类型:存储整数用______类型,存储价格金额用_______类型,存储姓名用_______类型。

20
填空题

MySQL日期时间类型:______存储日期,______存储时间,________存储日期和时间。

← 上一个专题 MySQL备份与恢复
下一个专题 → MySQL索引与优化

📝 发现内容有误?点击此处直接编辑

想查看更多习题和详细解析?
小程序提供完整的题库和详细解析

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库