参考:php手册:
http://dev.mysql.com/doc/refman/5.1/zh/charset.html#charset-examples
http://dev.mysql.com/doc/refman/5.1/zh/charset.html#charset-asian-sets
今天用一个python程序在创建的mysql数据库里创建了两个表,然后分别用两个python程序在网上抓取黄页数据分别导入两个表中,但是数据库里的汉字全变成了问号.
解决方法比较简单,只要将"字符集和校对规则的4个级别:服务器级、数据库级、表级和连接级"与你python中的字符集设置一致就行.(比如我的pyton程序里数据库字符集为utf8,表的字符集也设置为utf8)
可以使用 mysql> show variables like 'char%'; 来查看你数据库各个级别默认的字符集.可以使用 set 命令修改默认的字符集,但好像只是一次性的,也可以修改配置文件来修改字符集(永久的)
我的mysql配置文件目录在: /etc/mysql/my.conf 下,用vim打开文件,在[client]与[mysqld]下都加入下面语句 default-character-set=utf8 (我设置的字符集为utf8),保存,重启mysql.
http://dev.mysql.com/doc/refman/5.1/zh/charset.html#charset-asian-sets
今天用一个python程序在创建的mysql数据库里创建了两个表,然后分别用两个python程序在网上抓取黄页数据分别导入两个表中,但是数据库里的汉字全变成了问号.
解决方法比较简单,只要将"字符集和校对规则的4个级别:服务器级、数据库级、表级和连接级"与你python中的字符集设置一致就行.(比如我的pyton程序里数据库字符集为utf8,表的字符集也设置为utf8)
可以使用 mysql> show variables like 'char%'; 来查看你数据库各个级别默认的字符集.可以使用 set 命令修改默认的字符集,但好像只是一次性的,也可以修改配置文件来修改字符集(永久的)
我的mysql配置文件目录在: /etc/mysql/my.conf 下,用vim打开文件,在[client]与[mysqld]下都加入下面语句 default-character-set=utf8 (我设置的字符集为utf8),保存,重启mysql.