sqlldr时候Field in data file exceeds maximum length

来源:互联网 发布:算法流程图模板 编辑:程序博客网 时间:2024/05/21 19:45

测试部使用sqlldr入库的时候遇到一个奇怪的问题 ,明明字段长度是256,数据文件中的列长度也是256,却报Field in data file exceeds maximum length问题,后来试着将字段长度改成280\300\1300照样导不进去,觉得很奇怪


   查询MOS找到了答案:

fix:Change controlfile to define column as CHAR ('length') SQL*Loader does not have the concept different character datatypes.  Incoming character data is assumed to be type char with a default length of 255. Thus, if the character string in the source Data File is more than 255 characters you will receive this error.   


   原来sqlldr引擎在检验数据文件的时候,遇到字符类型的时候,默认不能超过255,超过了就报错,如果想load超过255的字符,需要在控制文件中指明:

adress char(256),

   


   可以看出sqlldr引擎的数据校验只是基于规则的校验,不会考虑实际表字段,这可能也是基于性能的一个考虑

原创粉丝点击