使用mysql数据库,插入数据出现问号(?)的问题,解决方法
首先,我用的mysql数据库是5.7.12版本。
出现的问题:
1.插入数据显示错误,插入不成功,出现:Incorrect string value: '\xCD\xF5\xD5\xBC\xBE\xA9' for column 'Sname' at row 1
2.插入中文,虽然插入成功,但是显示:??
解决方法:
在my.ini文件中的 [mysqld] 中加入 #character-set-server=utf8
如图所示,必须在蓝圈的上方,就是说,蓝圈内的内容必须在[mysqld]的最下面,否则根本登录不了数据库。
如果,上述解决方法还是解决不了?的问题,
连接数据库时加上?useUnicode=true&characterEncoding=UTF-8这一句话。如下所示:
"jdbc:mysql://localhost:3306/sgmanagement?useUnicode=true&characterEncoding=UTF-8";
网上还有的说:在[mysqld]下加入 #default-character-set=utf8 ,不过我没用到。
感受:
现在当然是心情愉悦了,花了3 、4个小时在网上查了好多解决方法,都没用。皇天不负苦心人,最后给试出来了 。
2016/07/17 号追加:
由于一些原因,重装了下系统,然后又按照上述方法解决时,发现成功不了,不知为什么。所以用了另一种方法,在创建数据库时添加,/*!40100 DEFAULT CHARACTER SET utf8 */ 一句话,就可以输入中文了。比如创建s数据库:create database s /*!40100 DEFAULT CHARACTER SET utf8 */;