ホームページ >データベース >mysql チュートリアル >MySQL にアラビア語データを保存するときに疑問符を回避するにはどうすればよいですか?

MySQL にアラビア語データを保存するときに疑問符を回避するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-08 20:51:12413ブラウズ

How to Avoid Question Marks When Storing Arabic Data in MySQL?

アラビア語データを MySQL データベースに適切に保存する方法

必要な文字エンコーディングと照合順序が必要な場合、アラビア語テキストを MySQL データベースに保存すると課題が生じる可能性がありますが正しく構成されていません。

一般的な問題: 質問が表示されるアラビア語の代わりにマーク

データベースからアラビア語テキストを取得するときに疑問符 (????) が発生した場合は、次のことが原因である可能性があります:

  • 文字セットが正しくないデータベース、テーブル、または列の照合設定と
  • 正しいかどうかを確認せずにアラビア語テキストを手動で挿入するエンコード

解決策:

正しい文字セットと照合順序の確認と設定:

  • データベース、テーブル、列に次の内容があることを確認します。 UTF-8 文字セットと UTF-8 general_ci 照合順序。

    • 次の SQL コマンドを使用して確認します。

      • 向けデータベース:

        SELECT default_character_set_name FROM information_schema.SCHEMATA S
        WHERE schema_name = "schemaname";
      • テーブルの場合:

        SELECT CCSA.character_set_name FROM information_schema.`TABLES` T,
        information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA
        WHERE CCSA.collation_name = T.table_collation
        AND T.table_schema = "schemaname"
        AND T.table_name = "tablename";
      • 列の場合:

        SELECT character_set_name FROM information_schema.`COLUMNS` C
        WHERE table_schema = "schemaname"
        AND table_name = "tablename"
        AND column_name = "columnname";
    • 正しい文字セットを設定し、必要に応じて照合順序:

      • データベースの場合:

        ALTER DATABASE databasename CHARACTER SET = utf8 COLLATE = utf8_general_ci;
      • テーブルの場合:

        ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
      • 向け列:

        ALTER TABLE tablename MODIFY columnname VARCHAR(50) CHARACTER SET utf8;

アラビア語データの手動挿入:

  • 手動で挿入する場合は、アラビア語テキストが UTF-8 でエンコードされていることを確認してください。
  • バックスラッシュを使用してアラビア語テキスト内の特殊文字 (アポストロフィなど) をエスケープします。

これらの手順に従うことで、MySQL データベースにアラビア語データを適切に保存および取得できます。 、疑問符文字のない正確な表現が保証されます。

以上がMySQL にアラビア語データを保存するときに疑問符を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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