發(fā)現(xiàn)問(wèn)題
最近一段時(shí)間學(xué)習(xí)Django,在進(jìn)行與MySQL數(shù)據(jù)聯(lián)合使用的插入數(shù)據(jù)的時(shí)候遇到下邊的問(wèn)題:
| /usr/local/lib/python2.7/dist-packages/Django-1.11.dev20170117002028-py2.7.egg/django/db/backends/mysql/base.py:109: Warning: Incorrect string value: '/xE6/x88/x90/xE5/x8A/x9F...' for column 'json' at row 1 return self.cursor.execute(query, args)[07/Feb/2017 12:15:21] "GET /index/ HTTP/1.1" 200 250 |
中文無(wú)法插入MySQL數(shù)據(jù)庫(kù)~!~!
查看數(shù)據(jù)庫(kù)編碼
| mysql> show create database bangjob;+----------+--------------------------------------------------------------------+| Database | Create Database |+----------+--------------------------------------------------------------------+| bangjob | CREATE DATABASE `bangjob` /*!40100 DEFAULT CHARACTER SET latin1 */ |+----------+--------------------------------------------------------------------+1 row in set (0.00 sec) |
| mysql> show variables like'%char%';+--------------------------+----------------------------+| Variable_name | Value |+--------------------------+----------------------------+| character_set_client | utf8 || character_set_connection | utf8 || character_set_database | latin1 || character_set_filesystem | binary || character_set_results | utf8 || character_set_server | latin1 || character_set_system | utf8 || character_sets_dir | /usr/share/mysql/charsets/ |+--------------------------+----------------------------+8 rows in set (0.00 sec) |
修改數(shù)據(jù)庫(kù)編碼
| mysql> set character_set_database=utf8;Query OK, 0 rows affected (0.00 sec)mysql> set character_set_server=utf8;Query OK, 0 rows affected (0.00 sec) |
查看修改后的結(jié)果
| mysql> show variables like'%char%';+--------------------------+----------------------------+| Variable_name | Value |+--------------------------+----------------------------+| character_set_client | utf8 || character_set_connection | utf8 || character_set_database | utf8 || character_set_filesystem | binary || character_set_results | utf8 || character_set_server | utf8 || character_set_system | utf8 || character_sets_dir | /usr/share/mysql/charsets/ |+--------------------------+----------------------------+8 rows in set (0.00 sec) |
這時(shí)候繼續(xù)插入就沒(méi)有任何問(wèn)題了。
如果真的是這樣簡(jiǎn)單就好了,因?yàn)檫@樣的修改作者在重啟MySQL的后設(shè)置失效?。?!
繼續(xù)尋找其它方法
| sudo gedit /etc/mysql/my.cnf |
在my.cnf文件的對(duì)應(yīng)節(jié)點(diǎn)添加一下信息:
| [client]default-character-set=utf8[mysqld]default-character-set=utf8[mysql]default-character-set=utf8 |
然后重啟MySQL:
| /etc/init.d/mysql start |
如果能重啟那么再次查看數(shù)據(jù)庫(kù)編碼:
新聞熱點(diǎn)
疑難解答
圖片精選