1. 首先解释下 utf8_bin跟utf8_general_ci的区别
ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的;bin 是二进制, a 和 A 会别区别对待.例如你运行:SELECT * FROM table WHERE txt = 'a'那么在utf8_bin中你就找不到 txt = 'A' 的那一行, 而 utf8_general_ci 则可以.
2. 默认新建一个字段是utf8_general_ci,前提你的数据库是UTF-8的
ALTER TABLE `config`
MODIFY COLUMN `description` varchar(50) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT '';
或者你用Navicat For Mysql打开表设计修改: