zOs/SQL/NZ240INS
$#@
$*( generate jobs
each looping
insert into one partition of tnz240a1
sleep
rollback
$*)
$>.fEdit()
$@insJob{A, "x'0000'", "x'0002FF'"} $** part 1
$@insJob{B, "x'002A'", "x'002DFF'"} $** part 12
$@insJob{C, "x'00CE'", "x'00D1FF'"} $** part 52
$@insJob{D, "x'00E6'", "x'00E9FF'"} $** part 58
$@insJob{E, "x'00EA'", "x'00EDFF'"} $** part 59
$@insJob{I, "x'00EE'", "x'00EFFF'"} $** part 60
$@insJob{J, "x'00F0'", "x'00F3FF'"} $** part 61
$@insJob{K, "x'00F8'", "x'00FBFF'"} $** part 63
$@insJob{L, "x'00FC'", "x'FFFFFF'"} $** part 64
$@proc insJob $@/insJob/
parse arg , jc, vFr, vTo
$= jc =- jc
$@=/jcl/
//A540769$jc JOB (CP00,KE50),'DB2 nz440 ins', 00010000
// MSGCLASS=T,TIME=1440, 00020000
// NOTIFY=&SYSUID,REGION=0M 00030000
//*MAIN CLASS=LOG0 00040001
//*
//S1 EXEC PGM=IKJEFT01,DYNAMNBR=200,TIME=99, 00020001
// PARM='WSH'
//SYSPROC DD DSN=A540769.WK.REXX,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//*OUT DD SYSOUT=* avoid truncation
//SYSTSIN DD DUMMY
//WSH DD *
$/jcl/
$$ $"$#@"
$$- $'$= vFr =- "'vFr'"'
$$- $'$= vTo =- "'vTo'"'
$@#/wshIn/
call errAddCleanup 'call sqlExec rollback'
call sqlConnect DBAF
$;
$@do ix=1 to 120 $@/loop/
say time() 'inserting'
$;
$<=[
declare global temporary table session.ins
as (select * from oa1a.tnz240a1)
with no data
;
insert into session.ins
select *
from oa1a.tnz240a1
where NZ240003 between $vFr and $vTo
fetch first 50 rows only
;
update session.ins set NZ240003 = left(NZ240003, 19) || '?'
;
insert into oa1a.tnz240a1
select * from session.ins
;
$] call sqlStmts
call sleep 30
say time() 'rolling back'
call sqlExec rollback
$/loop/
$/wshIn/
$/insJob/
$#out 20130115 14:32:38
$#out 20130115 14:24:22
$#out 20130114 20:02:38
$#out 20130114 19:54:59
$#out 20130114 19:52:44
$#out 20130114 19:51:40
$#out 20130114 19:50:41