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