CREATE TABLE `address` (
`is_default` enum('0','1') NOT NULL DEFAULT '0' COMMENT '1默认收货地址',
) ENGINE=InnoDB AUTO_INCREMENT=8196 DEFAULT CHARSET=utf8 COMMENT='买家地址信息表';
查询条件是enum类型的字段时,如果是想比较emun值就要传字符串,enum类型每个枚举的值都会有个隐形的索引,如果比较的值是整型将会引用enum索引对应的值,enum的索引以1开始,enum可以类比成PHP这样的索引数组
[
1 => '0', 枚举值为0
2 => '1', 枚举值为1
]
以上数据表结构为查询实例:
where is_default = 1 //实际上在查询时会转换为where is_default = '0'
where is_default = 2 //实际上在查询时会转换为where is_default = '1'
where is_default = '0' //实际上在查询时会转换为where is_default = '0'
where is_default = '1' //实际上在查询时会转换为where is_default = '1'
听说enum字段插入值为整数时荟报错,有待查证。https://blog.csdn.net/u012643122/article/details/52643686
参考资料:https://www.cnblogs.com/skillCoding/archive/2012/03/14/2395404.html