Storing CSD data in Db2
If you want to store data in a Db2® database, you must format the data, create tables in Db2, and populate those tables with the data that has been formatted.
About this task
Procedure
Results
Example
Here is an example of the JCL code that you could use to format your data and move it to Db2:
//DB2EXT JOB MSGCLASS=H,CLASS=A,NOTIFY=&SYSUID
//*-----------------------------------------------
//*CSD EXTRACT
//*-----------------------------------------------
//EXTRACT EXEC PGM=DFHCSDUP,REGION=2000K
//SYSPRINT DD SYSOUT=A
//*
//STEPLIB DD DSN=<cicshlq>.SDFHLOAD,DISP=SHR
//DFHCSD DD DSN=TEST.RTSREG.CTS410.CICS660.CSD,DISP=SHR
//SYSOUT DD *
//FOROUT DD DSN=USER1.TEST.DB2.INPUT,DISP=SHR
//SYSIN DD *
EXTRACT GROUP(TESTGRP) USERPROGRAM(DFH0FORC) OBJECTS
/*
//
//DB2STG JOB 1,USER=TEST,CLASS=A,MSGCLASS=A,
// MSGLEVEL=(1,1),REGION=7M,NOTIFY=&SYSUID
//*
//JOBLIB DD DSN=SYS2.DB2.V910.SDSNLOAD,DISP=SHR
//*-----------------------------------------------
//* CREATE STORAGE GROUP/DATABASES/TABLESPACES
//*-----------------------------------------------
//CREATDB EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DHP2)
RUN PROGRAM(DSNTIAD) PLAN(DSNTIA91) -
LIB('DSN910P2.RUNLIB.LOAD')
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN DD *
DROP DATABASE TESTDB;
DROP STOGROUP TESTDBST;
CREATE STOGROUP TESTDBST VOLUMES (SYSDA) VCAT DSN910P2;
CREATE DATABASE TESTDB STOGROUP TESTDBST;
COMMIT;
CREATE TABLESPACE TESTDBTS IN TESTDB
LOCKSIZE ROW;
COMMIT;
/*
//
//*-----------------------------------------------
//* CREATE TABLES AND INDEXES
//*-----------------------------------------------
//CREATTAB EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//DBRMLIB DD DSN=DSN910P2.DBRMLIB.DATA,DISP=SHR
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DHP2)
RUN PROGRAM(DSNTIAD) PLAN(DSNTIA91) -
LIB('DSN910P2.RUNLIB.LOAD')
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN DD *
//* INCLUDE CONTENTS OF SDFHSAMP(DFH$DB2T) HERE
//*e.g.
//*CREATE TABLE ATOMSERVICE
//* (ATOMSERVICE CHAR(8),
//* RDOGROUP CHAR(8),
//* DESCRIPTION CHAR(58),
//* ATOMTYPE CHAR(10),
//* STATUS CHAR(8),
//* CONFIGFILE CHAR(255)
//* RESOURCENAME CHAR(16),
//* RESOURCETYPE CHAR(7),
//* BINDFILE CHAR(255)
//* DEFINETIME CHAR(17),
//* CHANGETIME CHAR(17),
//* CHANGEUSRID CHAR(8),
//* CHANGEAGENT CHAR(8),
//* CHANGEAGREL CHAR(4))
//* IN TESTDB.TESTDBTSP;
//*
//*CREATE INDEX ATOMI ON ATOMSERVICE
//* (ATOMSERVICE ASC);
//*
//* COMMIT;
//* etc ...
//
//GRANTACC EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DHP2)
RUN PROGRAM(DSNTIAD) PLAN(DSNTIA91) -
LIB('DSN910P2.RUNLIB.LOAD')
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN DD *
GRANT DBADM ON DATABASE TESTDB TO PUBLIC;
GRANT USE OF TABLESPACE TESTDB.TESTDBTS TO PUBLIC;
GRANT ALL PRIVILEGES ON TABLE TESTDBTB TO PUBLIC;
/*
//
//*-----------------------------------------------
//*LOAD DATA INTO TABLES
//*-----------------------------------------------
//DB2TBL JOB CLASS=A,MSGCLASS=H,NOTIFY=&SYSUID,REGION=4096K,
// USER=TEST
//*
//JOBLIB DD DSN=SYS2.DB2.V910.SDSNLOAD,DISP=SHR
//*
//*
//**************** LOAD ITMNUMBR - TRANS WKLD ********************
//*
//STEPITM EXEC PGM=DSNUTILB,PARM='DHP2'
//UTPRINT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSUT1 DD DSN=ST.ITM02.SYSUT1,DISP=(MOD,DELETE,CATLG),
// UNIT=SYSDA,SPACE=(CYL,(10,5))
//SYSREC DD DSN=USER1.TEST.DB2.INPUT,DISP=SHR
//SORTOUT DD UNIT=SYSDA,SPACE=(CYL,(40,10),,,ROUND)
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(10,10))
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(10,10))
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(10,10))
//SORTWK04 DD UNIT=SYSDA,SPACE=(CYL,(10,10))
//SYSIN DD * << INCLUDE CONTENTS OF SDFHSAMP(DFH$SQLT) HERE >>
//* e.g.
//*LOAD DATA
//*RESUME NO REPLACE
//*INTO TABLE ATOMSERVICE
//*WHEN (1:4) = 'ATOM'
//*(ATOMSERVICE POSITION (5:12) CHAR,
//* RDOGROUP POSITION (13:20) CHAR,
//* DESCRIPTION POSITION (21:78) CHAR,
//* ATOMTYPE POSITION (79:88) CHAR,
//* STATUS POSITION (89:96) CHAR,
//* CONFIGFILE POSITION (97:351) CHAR,
//* RESOURCENAME POSITION (352:367) CHAR,
//* RESOURCETYPE POSITION (368:374) CHAR,
//* BINDFILE POSITION (375:629) CHAR,
//* DEFINETIME POSITION (630:646) CHAR,
//* CHANGETIME POSITION (647:663) CHAR,
//* CHANGEUSRID POSITION (664:671) CHAR,
//* CHANGEAGENT POSITION (672:679) CHAR,
//* CHANGEAGREL POSITION (680:683) CHAR)
//*INTO TABLE BUNDLE
//*
//* etc...
/*
//