今天一个入库程序报错

SQL*Loader-00510 Physical record in data file (string) is longer than the maximum(number)

明显是sqlloader引起的

官方文档解释如下

Cause: The datafile has a physical record that is too long.

Action: Use CONCATENATE or CONTINUEIF. Break up the physical records.

 

经测试发现,原因是由于导入文件中存在不同格式的回车换行,

有^M$和$两种回车换行导致,所以用dos2unix命令统一转换成Linux回车换行。

dos2unix filename

问题解决。