HCOSS DSNUTILB LOAD ユーティリティは、DB2 DSNUTILB LOAD と同等です。移行プロセスの際に、メインフレーム DB2 データを SQL Server データベースの指定されたテーブルにロードします。
UNLOAD DATA FROM TABLE HCOSQL.CUSTOMER UNLOAD TABLESPACE HCOSQL.HCOTS FROM TABLE HCOSQL.EMPLOYEE
DSNUTILB LOAD を使用するには、JCL アプリケーション・プロジェクトを作成するか、またはエンタープライズ・サーバで JES CONTROL 機能を使用して直接 JCL をサブミットします。JCL 構文は DB2 互換であることが必要です。
次に、メインフレーム上で生成される LOAD カードを使用した JCL の例を示します。
//DSNCUSTM JOB
//DSNUPROC EXEC PGM=HCOUTILB,PARM='HCOD,SH '
//*
//SYSPRINT DD SYSOUT=*
//UTPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//STPRIN01 DD SYSOUT=*
//IDIOFF DD DUMMY
//*
//SYSUT1 DD DISP=MOD,DSN=SH.DSNUTILB.SYSUT1
//SORTOUT DD DISP=MOD,DSN=SH.DSNUTILB.SYSOUT
//SYSMAP DD DISP=MOD,DSN=SH.DSNUTILB.SYSMAP
//SYSERR DD DISP=MOD,DSN=SH.DSNUTILB.SYSERR
//SYSREC DD DISP=SHR,DSN=SH.HCOSQL.CUSTOMRS
//SYSIN DD *
LOAD DATA INDDN SYSREC LOG NO RESUME NO REPLACE
EBCDIC CCSID(00037,00000,00000)
INTO TABLE
"HCOSQL".
"CUSTOMRS"
WHEN(00001:00002) = X'0028'
NUMRECS 242100
( "C_ID"
POSITION( 00003:00006) INTEGER
, "C_D_ID"
POSITION( 00007:00008) SMALLINT
, "C_W_ID"
POSITION( 00009:00010) SMALLINT
, "C_FIRST"
POSITION( 00012:00029) VARCHAR
NULLIF(00011)=X'FF'
, "C_MIDDLE"
POSITION( 00031:00032) CHAR(00002)
NULLIF(00030)=X'FF'
, "C_LAST"
POSITION( 00034:00051) VARCHAR
NULLIF(00033)=X'FF'
, "C_STREET_1"
POSITION( 00053:00074) VARCHAR
NULLIF(00052)=X'FF'
, "C_STREET_2"
POSITION( 00076:00097) VARCHAR
NULLIF(00075)=X'FF'
, "C_CITY"
POSITION( 00099:00120) VARCHAR
NULLIF(00098)=X'FF'
, "C_STATE"
POSITION( 00122:00123) CHAR(00002)
NULLIF(00121)=X'FF'
, "C_ZIP"
POSITION( 00125:00133) CHAR(00009)
NULLIF(00124)=X'FF'
, "C_PHONE"
POSITION( 00135:00150) CHAR(00016)
NULLIF(00134)=X'FF'
, "C_SINCE"
POSITION( 00152:00177) TIMESTAMP EXTERNAL
NULLIF(00151)=X'FF'
, "C_CREDIT"
POSITION( 00179:00180) CHAR(00002)
NULLIF(00178)=X'FF'
, "C_CREDIT_LIM"
POSITION( 00182:00188) DECIMAL
NULLIF(00181)=X'FF'
, "C_DISCOUNT"
POSITION( 00190:00192) DECIMAL
NULLIF(00189)=X'FF'
, "C_BALANCE"
POSITION( 00194:00200) DECIMAL
NULLIF(00193)=X'FF'
, "C_YTD_PAYMENT"
POSITION( 00202:00208) DECIMAL
NULLIF(00201)=X'FF'
, "C_PAYMENT_CNT"
POSITION( 00210:00211) SMALLINT
NULLIF(00209)=X'FF'
, "C_DELIVERY_CNT"
POSITION( 00213:00214) SMALLINT
NULLIF(00212)=X'FF'
, "C_DATA"
POSITION( 00216:00717) VARCHAR
NULLIF(00215)=X'FF'
)
/*
//
ここで、HCOD は SQL Server データベースへの接続、HCOUTILB は DSNUTILB プログラム名、SH.HCOSQL.CUSTOMRS は SYSREC にマッピングされるカタログされたデータ・ファイルです。