ホームページ >データベース >mysql チュートリアル >データベースの文字セットと照合順序を変更して MySQL の文字表示の問題を解決する方法

データベースの文字セットと照合順序を変更して MySQL の文字表示の問題を解決する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-10 21:56:45971ブラウズ

How to Fix Character Display Issues in MySQL by Changing Database Character Sets and Collations?

MySQL の文字表示の問題を解決する: データベースの文字セットと照合順序を変更する

データベースの照合設定が正しくないと、文字表示の問題が発生する可能性があります。中国語と日本語の文字が疑問符に置き換えられるという問題が発生した場合は、照合設定が正しくないことが原因である可能性が高くなります。このガイドでは、MySQL データベース全体の文字セットと照合順序を変更する方法を説明します。

データベースの照合順序を変更する

データベース全体の照合順序を変更するには、次のクエリを使用します:

<code class="language-sql">ALTER DATABASE <database_name> CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;</code>

テーブルの並べ替えルールを変更する

特定のテーブルの照合順序を変更するには、次のクエリを実行します:

<code class="language-sql">ALTER TABLE <table_name> CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;</code>

列の並べ替えを変更する

列の照合順序を変更するには、次のクエリを使用します:

<code class="language-sql">ALTER TABLE <table_name> MODIFY <column_name> VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;</code>

UTF-8 照合順序を理解する

例で使用されている「utf8mb4_0900_ai_ci」照合順序は次のことを表します:

  • 3 バイト: UTF-8
  • 4 バイト: UTF-8MB4 (新バージョン)
  • v9.0: 0900 (新バージョン)
  • _ai_ci: 大文字と小文字とアクセントを区別しない

UTF-8MB4_0900_AI_CI の利点

この照合順序は改善されました:

  • ストレージ効率 (1 文字あたり 4 バイト)
  • ソートパフォーマンス
  • すべての Unicode 文字と絵文字をサポート

その他のリソース

以上がデータベースの文字セットと照合順序を変更して MySQL の文字表示の問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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