MySQL Enum 和 Set 类型插入数据详解

在 MySQL 中,Enum 和 Set 都是用来存储有限选项集的数据类型。

Enum 类型:存储单个选项,例如性别:'男' 或 '女'。

Set 类型:存储多个选项,例如爱好:'游戏', '睡觉', '打代码', '运动'。

示例:

CREATE TABLE t_enum_set (
    gender ENUM('男', '女'),
    hobby SET('游戏', '睡觉', '打代码', '运动')
);

INSERT INTO t_enum_set
VALUES (2, 7);

错误原因:

上述语句会报错,因为插入的值与表定义的列类型不匹配。

  • gender 列是一个 enum 类型,只能接受 '男' 或 '女' 两个值中的一个。
  • hobby 列是一个 set 类型,可以接受多个值,但这些值必须是 '游戏'、'睡觉'、'打代码'、'运动' 四个中的一个或多个。

正确插入数据:

INSERT INTO t_enum_set (gender, hobby) VALUES ('女', '游戏,睡觉,运动');

解释:

  • '女' 是 gender 列的值,对应 enum 类型定义中的选项。
  • '游戏,睡觉,运动' 是 hobby 列的值,对应 set 类型定义中的多个选项,用逗号分隔。

总结:

  • 在插入数据时,应使用 enumset 类型定义中提供的选项,而不是数字索引。
  • set 类型的值用逗号分隔。

希望本文能帮助您理解 MySQL enumset 数据类型以及如何正确插入数据。

MySQL Enum 和 Set 类型插入数据详解

原文地址: http://www.cveoy.top/t/topic/nnF3 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录