Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: SQL*Loader Date error (ORA-01858)
Madhavi, I wonder if sql*loader is having trouble with the column name TIMESTAMP? Could you test it with a different column name? Also, if the datatype of the TIMESTAMP column is TIMESTAMP, then you should try TO_TIMESTAMP instead of TO_DATE. The implicit conversion could be an issue. Jay ________________________________ From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Jim Silverman Sent: Wednesday, December 07, 2005 3:32 PM To: oracle-l_at_freelists.org Subject: RE: SQL*Loader Date error (ORA-01858) This may be a silly question, but are you sure that the column names in the controlfile correspond properly to the columns in your table RE_STATS_STAGING? In particular, are you sure that the datatypes of the input data (including the timestamp constant) are compatible with the datatypes in the table definition? ===================================== Jim Silverman Senior Systems Database Administrator Solucient, LLC Telephone: 734-669-7641 FAX: 734-930-7611 E-Mail: jsilverman_at_solucient.com From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Madhavi Kanugo Sent: Wednesday, December 07, 2005 1:20 PM To: 'oracle-l_at_freelists.org' Subject: SQL*Loader Date error (ORA-01858) Hello All, I'm trying to load data using SQL Loader and ran into the ORA-01858: a non-numeric character was found where a numeric was expected error. Below is my control file. As you can see, the timestamp is a constant field and I am loading its value from the filename of the data files. I am executing the sql loader from a shell script and creating the control file on the fly. The filename is in the form of: 20051206130101.txt So basically, the shell script replaces the when_changed value with 20051206130101. I created a temp table with just a date field and tried to insert a value into it. Insert into temp values (to_date('20051207160752','YYYYMMDDHH24MISS')); and there is no error and date conversion is implict. But SQLLOADER is erring out on ORA-01858. LOAD DATA INFILE FILENAME APPEND INTO TABLE RE_STATS_STAGING FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' TRAILING NULLCOLS ( RE_NAME, TG_TYPE, TRUNKGROUP, CONNECTS, HANGUPS, DECLINES, LOOPS, SECONDS, CC_CONNECTED, CC_SETUP, TIMESTAMP CONSTANT "to_date('_when_changed_','YYYYMMDDHH24MISS')" ) Any ideas on where I am going wrong? Any thoughts or help will be appreciated. Thanks in advance, Madhavi **DISCLAIMER This e-mail message and any files transmitted with it are intended for the use of the individual or entity to which they are addressed and may contain information that is privileged, proprietary and confidential. If you are not the intended recipient, you may not use, copy or disclose to anyone the message or any information contained in the message. If you have received this communication in error, please notify the sender and delete this e-mail message. The contents do not represent the opinion of D&E except to the extent that it relates to their official business.
-- http://www.freelists.org/webpage/oracle-lReceived on Thu Dec 08 2005 - 07:45:39 CST
![]() |
![]() |