ホームページ  >  記事  >  データベース  >  mysqlデータベースの文字コードの問題

mysqlデータベースの文字コードの問題

云罗郡主
云罗郡主転載
2019-01-22 14:17:034207ブラウズ

この記事の内容は、MySQL データベースの文字エンコーディングの問題に関するものです。必要な方は参考にしていただければ幸いです。 [推奨チュートリアル: MySQL チュートリアル]

1. コマンド ラインを使用して文字セット設定を表示する

show variables like 'character_set%';

mysqlデータベースの文字コードの問題

最初のチュートリアル、character_set_client is 送信データの文字セットエンコーディング。

2 番目に、character_set_connection は、データベースに接続するときの文字セット エンコーディングです。

3 番目のcharacter_set_results は、結果を返すときの文字セット エンコーディングです。

3 番目のcharacter_set_database は、現在のデータベースの文字セット エンコーディングです。

5 番目のcharacter_set_server は、サーバーの文字セット エンコーディングです。

6 番目のcharacter_set_system は、データベース名、テーブル名、フィールド名などのデータベース識別子のエンコーディングです。

送信プロセス: クライアント (クライアント送信エンコーディング) ------->接続 (データ接続エンコーディング) ------->[サーバー内部エンコーディング]----- - > 結果のエンコーディングを返します。

2. 文字セットと検証ルール

1. 校正ルール。

校正ルールには、文字セット エンコーディング_言語地域_比較ルールの 3 つの部分が含まれます。

文字セット エンコーディング: gbk、utf8 などはすべて文字セット エンコーディングです。

比較ルール: ci cs bin の 3 種類。

mysqlデータベースの文字コードの問題2. 照合規則を確認します:

show collation like 'xxxx';//模糊查询
show collation;

例: showcollat​​ion like 'gbk%'; 実際、この文はライブラリのクエリです。

3. gbk_ci と gbk_bin の違い

gbk_ci 校正ルールは大文字と小文字を区別しませんが、gbk_ci はピンインでソートされます。この機能 utf8_generation_ci は存在しません。

gbk_bin は文字 Ascall エンコーディングによってソートされます。

次のステートメントを渡すことができます:

select * from tbl_name order by 字段名;//检验

4. gbk と utf8 の選択

中国語の文字を格納する場合は、2 バイトを使用する gbk 文字セットを使用します。 utf8 を使用すると 3 バイトを消費します。ただし、gbk は本土の Web サイトにのみ適しており、utf8 は世界標準に適しています。選び方としては、方向性によって異なります。


以上がmysqlデータベースの文字コードの問題の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。