ホームページ >データベース >mysql チュートリアル >MySQL で UTF8 文字エンコーディングを使用してテーブルの書式設定を保持する方法

MySQL で UTF8 文字エンコーディングを使用してテーブルの書式設定を保持する方法

DDD
DDDオリジナル
2024-10-30 17:45:301006ブラウズ

How to Preserve Table Formatting in MySQL with UTF8 Character Encoding?

UTF8 文字エンコーディングによる MySQL コマンド ラインのフォーマットの強化

データベース テーブルに格納されているスウェーデン語およびノルウェー語の文字列を操作しているときに、データのクエリ時にテーブルのフォーマットに関する問題が発生する可能性があります。異なる文字セットを使用します。

問題ステートメント

デフォルトでは、「set names latin1;」を使用します。歪んだ出力が生成されます:

+-----------------------------------+
| name                              |
+-----------------------------------+
| Kid Interi#####                   | 
| Bwg Homes                         | 
| If Skadef####kring                | 
| Jangaard Export                   | 
| Nordisk Film                      | 
+-----------------------------------+

「set names utf8;」に切り替えます。文字は正しく表示されますが、表形式の書式設定は中断されます:

+-----------------------------------+
| name                              |
+-----------------------------------+
| Kid Interiør                     | 
| Bwg Homes                         | 
| If Skadeförsäkring              | 
| Jangaard Export                   | 
| Nordisk Film                      | 
+-----------------------------------+

解決策

UTF8 文字エンコーディングを使用しながら表形式の書式設定を維持するには、「-default-」を使用して MySQL クライアントを起動できます。 Character-set=utf8" オプション:

mysql --default-character-set=utf8

これを「/etc/mysql/my.cnf」ファイルのデフォルト設定として構成することもできます:

[mysql]
default-character-set=utf8

これCharacter_set_client、character_set_connection、character_set_results 構成変数を utf8 に設定します。

フォーマットの問題が解決しない場合は、次のコマンドを使用してデータベース、テーブル、列も utf8 に設定されていることを確認してください。

SHOW VARIABLES LIKE '%CHAR%';
SET character-set-server = utf8;

さらに、latin1 接続で書き込まれた可能性のある Unicode 文字がないか確認してください。これを解決するには、値が書き込まれたのと同じ文字セットでデータベースに接続するか、正しいエンコードを使用して値を取得して書き換えます。

注: MySQL の utf8 エンコードは完全な Unicode ではありません。実装。真の UTF-8 実装には、utf8mb4 文字セットの使用を検討してください:

mysql --default-character-set=utf8mb4

以上がMySQL で UTF8 文字エンコーディングを使用してテーブルの書式設定を保持する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。