- ベストアンサー
SQLLDRで、10M程度のテキストの流し込み
SQLLDRで、10M程度のテキストの流し込みを行おうとすると、 レコード1: 拒否されました。- 表DATATABLE,列DATABUFFでエラーが発生しました。 データファイルのフィールドが最大長を超えています となってしまいます。 insert文で行うと問題なくinnsertできています。 制御ファイルなどの記述が悪いのでしょうか? 制御ファイルは、 OPTIONS(LOAD=-1,SKIP=0,ERRORS=-1,ROWS=-1) LOAD DATA INFILE 'data.csv' BADFILE 'data.bad' APPEND INTO TABLE DATATABLE FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY "'" TRAILING NULLCOLS ( DATABUFF ) ご教授ください。 よろしくお願いします。 環境:Oracle10GR2+Linux
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> DATABUFF ここのところを「DATABUFF CHAR(n)」(nはテーブル定義に合わせてください)に変更してみては。
その他の回答 (1)
- ossan_hiro
- ベストアンサー率66% (88/132)
回答No.2
CSVファイルを作ったOSはLinuxですか? CSVファイルをLinuxで参照したとき^Mのような文字は出てませんか? また、データは日本語を含みますか?
質問者
お礼
~Mなどは出ていません。 データは、日本語を含みます。 CHAR(n)を指定することで、対応できました。 ありがとうございました。
お礼
遅くなってすみません。 CHAR(n)を指定することでOKでした。 ありがとうございました。