ホームページ  >  記事  >  データベース  >  UTF-8 としてエンコードされた Unicode テキストを MySQL テーブルにロードするにはどうすればよいですか?

UTF-8 としてエンコードされた Unicode テキストを MySQL テーブルにロードするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-28 12:10:02534ブラウズ

How to Load Unicode Text Encoded as UTF-8 into a MySQL Table?

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

UTF-8 でエンコードされた英語以外の文字を含む CSV ファイルからデータを MySQL にインポートするには

文字セット構成:

データをロードする前に、対応する列の文字セットを設定する必要があります。テーブル内のutf8。これにより、列に UTF-8 エンコードされたデータを格納できることが保証されます。

LOAD DATA INFILE によるデータのロード:

ロードするには LOAD DATA INFILE コマンドに次の構文を使用します。データ:

<code class="sql">LOAD DATA INFILE 'file'
IGNORE INTO TABLE table
CHARACTER SET UTF8
FIELDS TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'</code>
  • CHARACTER SET UTF8: データが UTF-8 でエンコードされることを指定します
  • IGNORE: スキップします文字エンコーディングの問題により適切にロードできない行
  • FIELDS TERMINATED BY ';': ファイルで列の区切りに別の区切り文字が使用されている場合は、これを適切な区切り文字に変更します
  • OPTIONALLY ENCLOSED BY '"': データに引用符で囲む必要がある特殊文字が含まれている場合にこれを使用します
  • LINES TERMINATED BY 'n': に変更しますCSV ファイルの行末文字を反映します

例:

<code class="python">import MySQLdb

conn = MySQLdb.connect(host="localhost", user="user", passwd="password", db="database")
cursor = conn.cursor()

# Set the character set of the column
cursor.execute("ALTER TABLE table MODIFY COLUMN column_name VARCHAR(255) CHARACTER SET UTF8")

# Load the data using LOAD DATA INFILE
cursor.execute(
    """
    LOAD DATA INFILE '/path/to/file.csv'
    IGNORE INTO TABLE table
    CHARACTER SET UTF8
    FIELDS TERMINATED BY ';'
    OPTIONALLY ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
    """
)

conn.commit()</code>

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

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