ホームページ > データベース > mysql チュートリアル > 私の絵文字が MySQL utf8mb4 データベースに正しく保存されないのはなぜですか?

私の絵文字が MySQL utf8mb4 データベースに正しく保存されないのはなぜですか?

Mary-Kate Olsen
リリース: 2024-12-10 14:16:11
オリジナル
232 人が閲覧しました

Why Aren't My Emojis Saving Correctly in My MySQL utf8mb4 Database?

MySQL utf8mb4: 絵文字の保存時の問題

この問題は、絵文字などの Unicode 文字を MySQL データベースに保存しようとすると発生します。オンライン ガイドに従ってデータベース、テーブル、列を適切に構成しているにもかかわらず、一部の絵文字が正確に保存されません。

構成の検証

適切な構成を確認するには、文字セットまた、データベース、テーブル、列の照合順序は utf8mb4 (_unicode_ci) に設定する必要があります。さらに、次のデータベース固有の変数が utf8mb4 に設定されていることを確認します:character_set_client、character_set_connection、およびcharacter_set_results。

データベース固有の変数の調整

これらの変数が設定されていない場合特定のデータベースに対して正しく設定されていない場合、MySQL は絵文字。これらの設定を調整するには、次のクエリを実行します。

ALTER DATABASE database_name CHARACTER SET = utf8mb4, COLLATE = utf8mb4_unicode_ci;

my.cnf File Configuration

さらに、次の行がmy.cnf 構成ファイル:

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
ログイン後にコピー

追加の考慮事項

  • SET NAMES utf8mb4 クエリが実行される場合、3 つのデータベース固有の変数 (character_set、character_set、 _connection、および _results) が設定されます
  • わずか 3 バイトの長さの絵文字は、utf8 エンコーディングを使用して保存できます。これは、太陽の絵文字が正しく保存された理由を説明しています。

以上が私の絵文字が MySQL utf8mb4 データベースに正しく保存されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート