在mysql中为enum数据类型设置空值

时间:2015-07-29 02:50:37

标签: php mysql

我在'colors'表中有数据类型为'ENUM'的列'profile'

以下values用于“颜色”列,此“个人资料”表格超过1K records

- Black
- White
- Red
- Orange

enum('Black', 'White', 'Red', 'Orange')

现在我想在插入记录时为某些场景set empty value for 'colors' column

所以我只是尝试通过phpmyadmin添加一个空值的记录,并且工作正常

insert into `profile` (user_id, colors) values ('10000', '');

我的问题是,'colors'列没有空值。但是,它工作正常。

So shall I continue without altering schema for 'colors' column

(或)

Should I alter the schema as follows
ALTER TABLE `profile` CHANGE `colors` `method` ENUM( '', 'Black', 'White', 'Red', 'Orange' )

请建议最佳做法。

提前致谢!

1 个答案:

答案 0 :(得分:2)

从我的评论中改变了我的想法:

NULL - 数据缺失
空白 - 主动选择颜色(如果有意义)

枚举的工作原理:

默认情况下为空,当架构允许时为NULL。

价:Comparison