ホームページ >データベース >mysql チュートリアル >MySQL に絵文字を保存するときに発生する「文字列値が正しくありません」エラーを解決するにはどうすればよいですか?

MySQL に絵文字を保存するときに発生する「文字列値が正しくありません」エラーを解決するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-22 05:49:14630ブラウズ

How to Resolve

不正な文字列値: 絵文字および絵文字ストレージのエンコーディング解像度

特殊な UTF-8 文字を含むツイートを MYSQL に保存しようとしているときテーブル、エラー メッセージ - 「文字列値が正しくありません: 「xF0x9Fx8ExB6xF0x9F...」」 - が発生します。このエラーは、テーブルの「tweet_text」フィールドが複数の言語をサポートする必要がある utf8mb4 でエンコードされているにもかかわらず発生します。

原因を調査した結果、必要な MYSQL 構成設定が正しく構成されていないことが判明しました。問題を解決するには:

  1. mysql 構成ファイル (my.ini) を編集します: 文字セットを utf8mb4 に変更します。
  2. MYSQL クライアントに接続し、以下を実行します。コマンド:

    • SET NAMES utf8mb4;
    • ALTER DATABASE CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
  3. 変更を確認します: 次のコマンドを実行して、文字セットと照合順序が更新されたことを確認します。

    • 変数を表示WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collat​​ion%';

これらの手順を完了すると、エラー メッセージが表示されなくなり、ツイートも '複数の音符の文字は「tweet_text」に正常に保存されます。コラム

以上がMySQL に絵文字を保存するときに発生する「文字列値が正しくありません」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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