Outfile への MySQL エクスポート: CSV エスケープ文字の処理
大規模なデータベース テーブルを CSV ファイルに効率的にエクスポートするには、INTO OUTFILE コマンドを使用します。頻繁に利用されます。ただし、説明などのフィールドで改行やキャリッジ リターンなどの特殊文字をエスケープする場合に問題が発生します。
元の MySQL クエリでは、FIELDS ESCAPED BY '"' オプションを使用して改行文字を置き換えていました。 (n) とスペース。ただし、出力ファイルに新しい行が残っているため、この置換では不十分であることが判明し、Excel インポートで問題が発生しました。
この問題を解決するには、 MySQL ステートメントが推奨されます:
SELECT id, client, project, task, description, time, date INTO OUTFILE '/path/to/file.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM ts
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' オプションを使用すると、特殊文字を正しくエスケープしながら、オプションでフィールドを二重引用符で囲むことができます。このアプローチにより、特殊文字を含む説明やその他のフィールドが Excel マクロやピボット テーブルを壊すことなく適切に処理されることが保証されます。
さらに、SET NAMES utf8; を呼び出します。出力ファイル選択の前に行うと、エクスポート プロセス全体で一貫した文字エンコーディングを確保できる場合があります。
これらの変更を実装すると、特殊文字を適切に処理してデータを CSV に効率的にエクスポートでき、Excel へのシームレスなインポートが可能になり、整合性が維持されます。分析とレポート用のデータ。
以上がINTO OUTFILE を使用して MySQL データを CSV にエクスポートするときに特殊文字を適切にエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。