2020久久超碰欧美精品最新亚洲欧美日韩久久精品,国产福利电影一区二区三区,亚洲欧美日韩一区在线观看,亚洲国产欧美日韩欧美特级,亚洲欧美日韩成人一区久久,欧美日韩精品一区二区三区不卡,国产欧美日韩va另类影音先锋,亚洲欧美日韩久久精品,亚洲欧美日韩国产成人精品影院,亚洲国产欧美日韩精品一区二区三区,欧美日韩国产成人高清视频,日韩久久精品国产免费观看频道,久久人人爽人人爽从片av高清,国产精品综合一区二区

首頁技術文章正文

Mysql數據庫亂碼解決方案

更新時間:2022-11-16 來源:黑馬程序員 瀏覽量:

IT培訓班

  導讀:

   作為一個數據庫的初學者,遇到數據庫亂碼問題,是一個比較頭疼的問題,下面根據我的使用經驗,給大家分享幾種解決mysql數據庫亂碼問題的方式,希望對大家有幫助。

  一、我們需要將默認的字符集更改為utf-8來解決數據庫導入數據的亂碼問題:

  我們需要先查看數據庫默認的字符集是什么:

show variables like 'character_set_%'

  查看所有的默認字符集

mysql> show variables like 'character_set_%';
+--------------------------+---------------------------------------------------------+
| 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       | C:\Program Files\MySQL\MySQL Server 5.7\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set, 1 warning (0.01 sec)

  其中character_set_database和character_set_server的字符集mysql默認為latin1。

  我們需要將其更改為utf-8的字符需要用到下面兩行代碼:

set character_set_database=utf8;

set character_set_server=utf8;

  然后我們做字符集查詢

show variables like 'character_set_%'

  得到:

mysql> show variables like 'character_set_%';
+--------------------------+---------------------------------------------------------+
| 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       | C:\Program Files\MySQL\MySQL Server 5.7\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set, 1 warning (0.00 sec)

  之后創建的所有的數據庫的字符集都默認為utf-8的字符集 .這個時候我們再去做字符集的插入時就可以看到漢字被成功插入不會再出現亂碼問題。

  二、更改數據庫和表的字符集的方法

alter database 數據庫名 charset utf8;

alter table 數據表名  convert to character set utf8;

  三、導入數據庫的方法

  Windows系統

source d:/table.sql(*.sql文件所處的盤位置)

  linux系統

source /home/hhh/桌面/tables.sql;

  總結:

   上面給大家介紹了三種解決mysql亂碼的方法,因為我們將來開發的系統,基本上都會涉及到非英文的數據,因此建議大家使用第一種方式,把數據庫服務器的默認編碼方式改成utf8,這樣以后不管什么時候使用,都不會發生亂碼問題!

分享到:
在線咨詢 我要報名
和我們在線交談!