在 MySQL 中,enum 是一种列类型,用于存储定义的一组可能的值。
CREATE TABLE demo (id INT PRIMARY KEY,gender ENUM('Male', 'Female'));
上面的代码示例中,定义了一个 demo 表,其中包含一个 id 列和一个 gender 列,gender 列的类型是 enum,其可能的值为 Male 和 Female。
使用 enum 类型存储数据时,可以在写入时进行检查,确保输入的值是预先定义的值之一,这有助于增强数据的完整性和一致性。
INSERT INTO demo (id, gender) VALUES (1, 'Male'); -- 正确的写入INSERT INTO demo (id, gender) VALUES (2, 'Female'); -- 正确的写入INSERT INTO demo (id, gender) VALUES (3, 'Other'); -- 错误的写入,将会抛出异常
在查询时,可以通过 WHERE 子句来检索符合特定条件的枚举类型的值。
SELECT * FROM demo WHERE gender = 'Male';
需要注意的是,当使用 enum 类型时,数据存储的大小是固定的,它只存储预定义的值之一,所以对于大型数据集,它可能不是最佳的选择。