Windowsの下で文字の符号化による中国語の文字化の問題を解決します

1748 ワード

まずコマンド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
D:\wamp\bin\mysql\mysql5.7.19\share\charsets\
8 rows in set,1 warning(0.00 sec)現在の文字符号化が統一されていないことがわかり、中国語の文字化けしが発生しやすい
mysql> desc p39_goods;
| Field        | Type    | Null | Key | Default | Extra         |

|------------| ---| ----------| ----------------| -----------| ----------|

| id           | mediumint(8) unsigned | NO   | PRI | NULL    | auto_increment |

| goods_name   | varchar(150)          | NO   |     | NULL    |                |

| market_price | decimal(10,2)         | NO   |     | NULL    |                |

| shop_price   | decimal(10,2)         | NO   | MUL | NULL    |                |

| goods_desc   | longtext              | YES  |     | NULL    |                |

| is_on_sale   | enum('                | NO   | MUL |         |                |

| is_delete    | enum('                | NO   |     |         |                |

| addtime      | datetime              | NO   | MUL | NULL    |                |

ここの中国語の場所は直接表示できません
この問題を永遠に解決するためにmy.iniファイルでは、以下の変更を行います.
mysqlモジュールの下に次の行を追加します.
  • (1)default-character-set=utf 8(デフォルトの符号化設定は、一般的にオペレーティングシステムの符号化と一致すべきである)(default-character-set=gbkに変更)(gb 18030はできない)mysqldモジュールの下で次の行
  • を追加する
  • (2)character-set-server=utf 8(サービス側符号化設定)(デフォルトでは変更する必要はありませんが、utf 8でなければutf 8に変更することをお勧めします)これで、中国語の文字化けの問題を永遠に解決することができます