phpMyAdminでCSVインポートを良く使うのですが、たとえばintのフィールドに空("")をいれようとすると
MySQL のメッセージ: ドキュメント
#1366 - Incorrect integer value: '' for column 'sample_number' at row 1
なんてエラーが出てインポートできません。
NULLといれておけばNULLで入るので解決するのですが
普通CSVといえばExcelなどでデータを作ってCSVファイルにしてインポートするわけで
空なんてざらにあるわけでして・・・
いちいちセルにNULLとかいれるのは本当に面倒です。
と思っていたら、空だったら自動でNULLをinsertする方法がありました。
CSVインポートの際に、「フォーマット特有のオプション:」にて
「INSERT エラーで中断しない」
にチェックをつけると、空値が入っていてもNULLでインポートしてくれます。
ただCSVファイルの行数はインポート前に把握しておいた方が良いですね。
※7/3追記
このオプションは例えば入れるべき値が1列ずれてたなどそういう致命的なミスがあった場合でも適宜0やNULLなどインポートできる値に置き換えていれてしまうので、ミスに気づきにくいです。
結局使わなかった・・・
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。