CSVインポートでエラーが出たとき、最初から全データを直し始めると遠回りになりやすい。
どの種類の失敗かを先に切り分ける。
1. ファイル自体を読めるか
文字コードが合っているか。UTF-8 / Shift_JIS / BOMの違いを見る。
2. 区切り文字は合っているか
全部1列になるなら、カンマではなくタブやセミコロンの可能性もある。
3. ヘッダーは一意か
空のヘッダーや重複列名があると、マッピングが曖昧になる。
4. 必須値は入っているか
列の存在だけでなく、各行に値があるかを見る。
5. 行ごとの列数は揃っているか
カンマ、引用符、セル内改行を確認する。
6. 型の自動変換が起きていないか
先頭0、日付、長い数値IDなどを見る。
7. 一意キーが重複していないか
完全に同じ行ではなく、インポート先が一意とするキーで確認する。
最小データで再現する
原因候補が絞れたら、問題行を含む数件だけのコピーで再現する。
全件で試行錯誤するより、エラー条件を特定しやすい。
ZEROHANDのCSV Preflight v0.1は、必須・重複・ヘッダー・構造エラーをローカルで先に止めるためのRelease Candidate。
インポートエラー対応は、修正より先に分類。これだけで調査範囲を小さくできる。