ホームページ >データベース >mysql チュートリアル >Python を使用して UTF-8 エンコードされたテキストを MySQL テーブルにロードする方法

Python を使用して UTF-8 エンコードされたテキストを MySQL テーブルにロードする方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-30 04:49:02691ブラウズ

How to Load UTF-8 Encoded Text into a MySQL Table Using Python?

UTF-8 エンコードされたテキストを MySQL テーブルにロードする

MySQL テーブルにロードするための CSV ファイルに英語以外の文字が含まれる場合、文字エンコーディングを適切に処理することが重要です。これは、非 ASCII 文字が存在する場合に特に重要になります。非 ASCII 文字の表現は、選択したエンコーディングに基づいて変化する可能性があるためです。

あなたの場合、対応するテーブル列の文字セットを UTF-8 に設定するだけでは機能しない可能性があります。十分であること。データのロード中に英語以外の文字が正確に保持されるようにするには、LOAD DATA LOCAL INFILE コマンド中に文字セットを明示的に指定することが重要です。

Python の場合、次のアプローチを使用できます。

<code class="python">import MySQLdb

# Connect to the database
db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="database_name")
cursor = db.cursor()

# Prepare the LOAD DATA statement
stmt = ("LOAD DATA INFILE 'file' "
        "IGNORE INTO TABLE table "
        "CHARACTER SET UTF8 "
        "FIELDS TERMINATED BY ';' "
        "OPTIONALLY ENCLOSED BY '"' "
        "LINES TERMINATED BY '\n'")

# Execute the statement
cursor.execute(stmt)

# Commit the changes
db.commit()</code>

ステートメントで CHARACTER SET UTF8 を明示的に指定することにより、MySQL はデータを UTF-8 でエンコードされたものとして解釈するように指示されます。これにより、たとえ ASCII 範囲外の文字が含まれていたとしても、英語以外の文字が正しく表現され、テーブル内に格納されることが保証されます。

以上がPython を使用して UTF-8 エンコードされたテキストを MySQL テーブルにロードする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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