データのインポート中に CSV 内の列を MySQL テーブルの列に割り当てる
LOAD DATA INFILE コマンドを使用して CSV ファイルから MySQL にデータをインポートする場合、正確なデータを得るには、ファイル内の列の順序を MySQL テーブル内の対応する列と揃える必要があります。配置。この位置合わせを自動的に行うには:
列マッピングを使用した LOAD DATA INFILE 構文:
LOAD DATA INFILE コマンドは、次の順序を指定できる FIELDS 句をサポートしています。 CSV ファイル内の列は、MySQL テーブルの列に割り当てる必要があります。構文は次のとおりです:
LOAD DATA LOCAL INFILE 'abc.csv' INTO TABLE abc FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (col1, col2, col3, col4, col5...);
例:
名前、年齢、住所の順に列が含まれる CSV ファイルがあるとします。そして、年齢、名前、住所の列を含む MySQL テーブルにデータをインポートするとします。次のクエリを使用できます:
LOAD DATA LOCAL INFILE 'abc.csv' INTO TABLE abc FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (age, name, address);
このクエリは、FIELDS 句で指定された順序に基づいて、CSV ファイル内の列を MySQL テーブル内の正しい列に自動的に割り当てます。
MySQL 8.0 ユーザー向けの注意:
上記の構文の LOCAL キーワードセキュリティ上の影響があります。 MySQL 8.0 では、LOCAL はデフォルトで False に設定されます。これに関連するエラーが発生した場合は、MySQL ドキュメントの手順に従って LOCAL 機能を無効にするか、セキュリティ リスクを認識することができます。
以上がLOAD DATA INFILE を使用したデータのインポート中に CSV 列を MySQL テーブルの列にマッピングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。