handling special characters in sqlldr

From: dmardkar <dmardkar_at_gmail.com>
Date: Thu, 9 Sep 2010 09:11:52 -0700 (PDT)
Message-ID: <a6b7e40b-b7dd-4b0e-a00f-ea7486fe68b6_at_j19g2000vbh.googlegroups.com>



Hi,

I am trying to load a record(s) in a table which contains a field of text datatype. The records in question contain occasional single qoutes. This is an example of such records:

en|PRD-SHPE|11.0|NOTE: If a slab is a dummy', an asterisk is displayed at the end of the|20011003.0|

I am then creating a control file and use sqlldr to load the data but the load fails with the following messege:

Record 1: Rejected - Error on table SCRHLP_REC, column HLP_TXT. ORA-12899: value too large for column
"RPSNX31"."SCRHLP_REC"."HLP_TXT" (actual: 75, maximum: 74)

Here is the control file I am using:

load data
infile "./scrhlp.dat" "str X'400A'"
badfile "./scrhlp.bad"
into table scrhlp_rec
fields terminated by "|"
(

HLP_LNG_CD         ,
HLP_FLD_NM         ,
HLP_LN_NO          ,
HLP_TXT ,
HLP_REF_DT

)

If I remove the single qoute in the data, all works fine. How do I specify that a single qoute is acceptable in this case? Please help.

Thanks. Received on Thu Sep 09 2010 - 11:11:52 CDT

Original text of this message