2016-09-22 2 views
0

Ich habe eine Textdatei und sie enthält eine Spalte als "NPA_DATE", in der wenige Zeilen ein Datum als "00-00-" enthalten 000 ".So fügen Sie Daten aus einer Textdatei ein, deren Datumsspalte ein Datum wie "00-00-0000" hat

Ich kann keine Daten laden, deren Datum im Format "00-00-0000" ist. Ich bekomme den Fehler als "Datensatz 1: Abgelehnt - Fehler in Tabelle MIS_PNPA, Spalte NPA_DATE. ORA-01847: Tag des Monats muss zwischen 1 und letzten Tag des Monats sein". Allerdings möchte ich die Daten mit NPA_DATE zusammen mit anderen Daten als "00-00-0000" laden. Alle anderen Zeilen werden in die Datenbank hochgeladen. Ich benutze Kröte für Oracle 9.0.1.8

+0

00 ein ungültiges Datum und Monat. Warum ersetzen Sie "00-00-0000" nicht durch null oder [Mindestdatum] (https://stackoverflow.com/questions/687510/how-do-you-obtain-the-maximum-possible-date-in) -oracle) – Knu8

+0

Vielen Dank für Ihre schnelle Antwort Knu8, aber bitte lassen Sie mich wissen, wie Sie das Datum "00-00-0000 'durch Null in der Kontrolldatei (.ctl) ersetzen, da es ein täglicher Prozess ist, die Tabelle abzuschneiden und die neue einzufügen/aktualisierte Daten in der Tabelle Meine ctl-Datei ist LOAD DATA INTO TABELLE mis_pnpa FIELDS TERMINATED '' TRAILING NULLCOLS (sr_nr, branch_code, account_no, name1, acct_type, int_cat, produktname, appv_amt, adv_amt, theo_bal, out_amt, srf_amt, security_amt, rückstand, inka, uipy, act_outstand, npa_datum datum 'DD-MM-YYYY', old_irac, new_irac, arrear_cond, sys, proc_date Datum 'TT/MM/JJJJ') –

+0

Warum ersetzen Sie "00-00-0000" nicht durch null in der Textdatei selbst? – Knu8

Antwort

0

Sie sollten die SQLPlus-Tag zu Ihrem ursprünglichen Beitrag hinzufügen, da dies wirklich eine SQLPlus Frage ist.

Wie auch immer Ihre Steuerdatei Dies ändert das Datum auf NULL zu setzen, wenn es in so '00 kommt -00-0000' in der Datendatei:

... 
npa_date date "DD-MM-YYYY" NULLIF (npa_date="00-00-0000") 
... 
Verwandte Themen