ホームページ  >  記事  >  データベース  >  MySQL に中国語の文字を適切に挿入するにはどうすればよいですか?

MySQL に中国語の文字を適切に挿入するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-27 17:07:02639ブラウズ

How to Properly Insert Chinese Characters into MySQL?

MySQL への中国語の文字の挿入の問題の解決

データベースまたはテーブルが次のように構成されていない場合、MySQL への中国語の文字の挿入に問題が生じる可能性があります。 Unicode データを処理します。この問題は通常、Cookie が big5 文字セットを使用してエンコードされている場合に発生します。

解決策:

この問題を解決するには、データベースとテーブルがUTF-8の文字エンコーディングで設定します。これを実装する方法は次のとおりです。

1. UTF-8 用のデータベースの構成:

データベースの作成時に文字セット引数を使用します:

<code class="sql">create database stackoverflow CHARACTER SET utf8;</code>

これにより、データベースのデフォルトの文字セットが UTF-8 に設定されます。

2. UTF-8 用のテーブルの構成:

テーブルを作成するとき、各フィールドの文字セットを指定します:

<code class="sql">create table attendance_count (
    username varchar(30) CHARACTER SET utf8,
    date date,
    count_time int,
    appendix varchar(200) CHARACTER SET utf8
);</code>

これにより、フィールドで中国語の文字、特にこの場合、付録フィールドは UTF-8 エンコーディングに設定されます。

3. UTF-8 エンコーディングによるデータの挿入:

挿入クエリを実行するとき、文字セットを明示的に設定します:

<code class="sql">mysql_query("SET CHARACTER SET utf8;");
mysql_query($sql2);</code>

これは、挿入されるデータが UTF として扱われることを指定します。 -8 エンコード。

4.その他の考慮事項:

  • PHP スクリプトの文字セットが UTF-8 に設定されていることを確認してください。
  • さらに問題が発生した場合は、MySQL 構成ファイル (my .cnf) を使用して、デフォルトの文字セットが正しく設定されていることを確認します。

詳細なコード例:

次のコードは、これらの原則を示しています。

<code class="php">$db = new mysqli("localhost", "username", "password", "dbname");

// Set character set for the connection
$db->set_charset("utf8");

$sql = "INSERT INTO attendance_count (username, date, count_time, appendix) VALUES (?, ?, ?, ?)";
$stmt = $db->prepare($sql);

// Bind parameters in UTF-8 encoding
$stmt->bind_param("ssis", $username, $date, $count_time, $appendix);

// Execute the query
$stmt->execute();

$stmt->close();
$db->close();</code>

これらの手順に従うと、MySQL データベースに中国語の文字を正常に挿入できるようになります。

以上がMySQL に中国語の文字を適切に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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