LOAD CSV-Datei

Sie möchten eine DB2 z/OS Tabelle mit einer CSV-Datei laden? Die mögliche Probleme dabei sind ...

  • Der Input steht nicht auf gleichbleibenden  Spaltenpositionen
  • Zeichenketten sind in (Doppel-) Hochkommas gefaßt
  • Sonderzeichen trennen Spaltendaten voneinander ab
  • numerische Daten können Dezimalpunkte oder -Kommas enthalten
  • Daten können vom Zielsystem abweichende Codepage besitzen
    (in diesem Beispiel nicht berücksichtigt, siehe CCSID(n,n,n) Option)
  • Inputdaten können länger als Das Zielfeld sein (nicht berücksichtigt, siehe TRUNCATE Option)

Und so geht’s ...
 

//************************************************************
//* ASCII : X'3B' = ; X'22' = " X'2E' = .
//* EBCDIC: X'5E' = ; X'7F' = " X'4B' = .
//************************************************************
//LOAD    EXEC PGM=DSNUTILB,PARM='DB2A'
//SYSUDUMP DD DUMMY
//SYSUT1   DD SPACE=(CYL,(50,5)),UNIT=SYSDA
//SORTOUT  DD SPACE=(CYL,(50,5)),UNIT=SYSDA
//SYSPRINT DD SYSOUT=*
//UTPRINT  DD SYSOUT=*
//SYSIN    DD *
LOAD DATA INDDN SYSREC LOG YES RESUME NO REPLACE
FORMAT DELIMITED COLDEL X'5E' CHARDEL X'7F' DECPT X'4B'
INTO TABLE MYUSER.TEST_CSV
( C1_CHAR POSITION(*) CHAR
, C2_DEC POSITION(*) DECIMAL
, C3_VARCHAR POSITION(*) VARCHAR
, C4_INTEGER POSITION(*) INTEGER
, C5_DATE POSITION(*)
)
/*
//SYSREC DD *
"A";75.5;"SIEBEN-FUENF";75;"1.1.2008"
"B";11111175.5;".......SIEBEN-FUENF";21344475;"2.1.2008"
 

Dokumentation des DB2 for z/OS LOAD Utilities (V9.1) hier!

DB2 ist ein Produkt der
IBM Corporation. Bitte
Copyright-  und Trademark-Hinweise beachten!

© Gernot Ruban