python往phpmyadmin里插入数据,中文字符呈现乱码的原因
今天想采集一些数据存入到数据库中,留着以后使用。可是当我打开phpmyadmin新建好数据库与数据表之后,再使用python往里面插入数据时,发现中文字符全部乱码。因为之前已经有过采集数据存储到phpmyadmin的操作,所以直接换了个数据库试试,结果发现依然是这样。
这里出现问题,第一个想到的就是编码问题,于是我尝试了多种方法,什么在python文件头部插入# -*- coding:utf8 -*-,connect里加入参数unix_socket='/tmp/mysql.sock'等,结果依然是不行。后来发现phpmyadmin里新建的数据库默认排序规则是latin1_swedish_ci,于是我首先是尝试在python中将charset='latin1',发现依然不行。接着我就来修改phpmyadmin中排序规则,将其改为了utf8_general_ci,数据表也是同样,但是发现依然会乱码,不知道是不是因为没有重启的缘故,没有去尝试。
抱着试试的态度,我新建了一个数据库,这次在新建的时候就将排序规则设置成了utf8_general_ci,果然这次成功了,插入的中文字符能够正常显示了。
评论