標籤:mysql亂碼總結
1、在mysql中執行下句成功,可添加中文的。
insert into book(bookName,author,publish) values(‘好‘,‘hao‘,‘hao‘);
但是在jsp中執行這個insert 語句就會出現亂碼。
解決方案:在url後面加上?useUnicode=true&characterEncoding=utf-8
2、匯入txt檔案中的sql語句,亂碼。
先是執行show variables like ‘%char%‘;
+--------------------------+---------------------------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.0\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set (0.00 sec)
在MY.INI裡添加:
[mysql]
default-character-set=gb2312
[mysqld]
default-character-set=gb2312
然後重新啟動MYSQL服務。
進入資料庫
alter database charset = gb2312;
還要記得在匯入資料庫的指令碼的前面寫上 set names gb2312;
這樣就OK了。
alter database 你的資料庫名 charset = gb2312;
3、navicat表輸入資料亂碼
set names ‘gbk‘;