84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
刚开始用MYSQL,一直没注意到这个类型,它有什么优点?或者说如果存储内容都是短字符串的话,它跟varchar有何区别?
欢迎选择我的课程,让我们一起见证您的进步~~
例如下面两个字段:
name varchar(50) , sex enum('male' , 'female' , 'both' , 'unknow')
name 字段可以插入任意字符串。
name
sex 字段只允许插入 male , female , both , unknow 中的其中之一,不在范围内的值会报错。
sex
male , female , both , unknow
enum 相比较 varchar 就更加规范些,你在程序中限定也一样可以做到。
enum
varchar
对于性能比较的话,就得等待高手来解答了.....
Enum 好处让值取在几个值范围内
查询string和enum速度上差不多,用到enum或set就是逻辑上的需要吧。。。
enum在底层的存储方式是以整型进行存储的比如这样的字段sex enum('male' , 'female' , 'both' , 'unknow')在查询时where sex='male'和where sex=1是等效的
例如下面两个字段:
name
字段可以插入任意字符串。sex
字段只允许插入male , female , both , unknow
中的其中之一,不在范围内的值会报错。enum
相比较varchar
就更加规范些,你在程序中限定也一样可以做到。对于性能比较的话,就得等待高手来解答了.....
Enum 好处让值取在几个值范围内
查询string和enum速度上差不多,用到enum或set就是逻辑上的需要吧。。。
enum在底层的存储方式是以整型进行存储的
比如这样的字段
sex enum('male' , 'female' , 'both' , 'unknow')
在查询时
where sex='male'
和where sex=1是等效的