Limited supportBMC provides limited support for this version of the product. As a result, BMC no longer accepts comments in this space. If you encounter problems with the product version or the space, contact BMC Support.BMC recommends upgrading to the latest version of the product. To see documentation for that version, see CHECK PLUS for DB2 13.1.

Example 6: CHECK DATA for RI and table check constraint violations in a table space using ACKESQL to delete rows


This example illustrates a CHECK DATA job that checks for violations of Db2 defined RI and table check constraints for dependent tables of the named partitioned table space. This job checks only rows in CHKP status, and writes one SQL DELETE statement per distinct foreign key violation to a discard data set (SYSDISC) in SQLDEL format. No page checking for table spaces or indexes is performed.

In this example, the table space named in the CHECK DATA command has a dependent table in another table space. CHECK PLUS checks the dependent relations of the named table space. The table space is in CHKP status before the utility runs. The CHECK DATA job reports four RI exceptions in message BMC52606I and details the exceptions in informational messages BMC52610I and BMC52611W. It reports one table check constraint violation in message BMC52606I, identifies the constraint having the violation in message BMC52476, and details the violation in message BMC52471I.

Message 50041I indicates the status of zIIP processing. For this example, the ZIIP installation option is ENABLED, but an XBM subsystem was not specified. CHECK PLUS automatically located an available XBM subsystem to provide zIIP processing.

Upon completion of the utility, CHECK PLUS resets the CHKP status (off) only for those partitions without violations, as detailed in messages BMC52630I. Because of the violations, the utility completes with return code 4.

It shows the JCL for using the SQL batch execution program (ACKESQL) provided by CHECK PLUS to delete the rows that are in violation. For detailed information about this program, see SQL-batch-execution-program

Command options for example 6 

Command options used in JCL

Description

TABLESPACE

Identifies the table spaces to check.

DISCARDFMT SQLDEL

Produces one SQL DELETE statement per distinct foreign key in violation and writes the DELETE statements to the discard file.

DISCARDSERIALIZE YES

Overrides the DSER=NO installation option and tells CHECK PLUS to create serialization header records in the discard data set that ACKESQL uses.

SCOPE PENDING

Checks only tables, partitions, or table spaces that are in CHKP status.

CHECKIXLEVEL 0

Performs no checks on index pages other than those normally performed when CHECK PLUS reads index entries from the index.

CHECKTSLEVEL 0

Performs no checks on table space pages other than those normally performed normally when CHECK PLUS reads rows from the specified table space.


DDL to create the data structures checked in example 6 

CREATE TABLESPACE ACKRITS1 IN ACKRIDB1
 BUFFERPOOL BP0
 NUMPARTS 12
        (PART 1
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 2
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 3
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 4
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 5
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 6
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 7
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 8
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 9
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 10
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 11
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
        ,PART 12
           USING STOGROUP ACKRISG1
           FREEPAGE 5
           PCTFREE 00
      )
 LOCKSIZE PAGE CCSID EBCDIC
 CLOSE YES;
 COMMIT
 ;
CREATE TABLE ACK.ACKRITB1
 (COL01_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL02_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL03_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL04_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL05_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL06_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL07_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL08_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL09_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL10_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL11_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 ,COL12_CHAR_2   CHAR(2)         NOT NULL WITH DEFAULT
 )
 IN ACKRIDB1.ACKRITS1
 CCSID EBCDIC;
 COMMIT
 ;
CREATE       INDEX ACK.ACKRIX01
 ON ACK.ACKRITB1 (COL01_CHAR_2)
 USING STOGROUP ACKRISG1
 CLUSTER
 (PART 1  VALUES ('08')
 ,PART 2  VALUES ('16')
 ,PART 3  VALUES ('32')
 ,PART 4  VALUES ('40')
 ,PART 5  VALUES ('48')
 ,PART 6  VALUES ('56')
 ,PART 7  VALUES ('64')
 ,PART 8  VALUES ('72')
 ,PART 9  VALUES ('80')
 ,PART 10 VALUES ('88')
 ,PART 11 VALUES ('96')
 ,PART 12 VALUES ('99')
 )
 BUFFERPOOL BP0
 FREEPAGE 0
 PCTFREE 0;
 COMMIT
 ;
CREATE TABLESPACE ACKRITS2 IN ACKRIDB1
 BUFFERPOOL BP0
 NUMPARTS 12
      (PART 1
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 2
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 3
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 4
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 5
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 6
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 7
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 8
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 9
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 10
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 11
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      ,PART 12
         USING STOGROUP ACKRISG1
         FREEPAGE 5
         PCTFREE 00
      )
 LOCKSIZE PAGE
 CCSID EBCDIC
 CLOSE YES;
 COMMIT
 ;
CREATE TABLE ACK.ACKRITB2
 (COL01_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL02_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL03_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL04_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL05_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL06_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL07_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL08_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL09_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL10_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL11_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 ,COL12_CHAR_2  CHAR(2)    NOT NULL WITH DEFAULT
 )
 IN ACKRIDB1.ACKRITS2
 CCSID EBCDIC;
 COMMIT
 ;
CREATE     INDEX ACK.ACKRIX02
 ON ACK.ACKRITB2
 (COL01_CHAR_2
 )
 CLUSTER
   (PART 01 VALUES ('08')
     FREEPAGE 009
     PCTFREE 000,
    PART 02 VALUES ('16')
     FREEPAGE 009
     PCTFREE 015,
    PART 03 VALUES ('24')
     FREEPAGE 009
     PCTFREE 015,
    PART 04 VALUES ('32')
     FREEPAGE 009
     PCTFREE 015,
    PART 05 VALUES ('40')
     FREEPAGE 009
     PCTFREE 015,
    PART 06 VALUES ('48')
     FREEPAGE 009
     PCTFREE 015,
    PART 07 VALUES ('56')
     FREEPAGE 009
     PCTFREE 015,
    PART 08 VALUES ('64')
     FREEPAGE 009
     PCTFREE 015,
    PART 09 VALUES ('72')
     FREEPAGE 009
     PCTFREE 015,
    PART 10 VALUES ('80')
     FREEPAGE 009
     PCTFREE 015,
    PART 11 VALUES ('88')
     FREEPAGE 009
     PCTFREE 015,
    PART 12 VALUES ('96')
     FREEPAGE 009
     PCTFREE 015
 )
 USING STOGROUP   ACKRISG1
 PRIQTY            12
 SECQTY            12
 BUFFERPOOL        BP0;
 COMMIT
 ;
CREATE      UNIQUE INDEX ACK.ACKRIX03
 ON      ACK.ACKRITB2
 (COL01_CHAR_2
 ,COL02_CHAR_2
 )
 USING STOGROUP    ACKRISG1
 PRIQTY      12
 SECQTY      12
 FREEPAGE     5
 PCTFREE     30
 BUFFERPOOL  BP0;
 COMMIT
 ;
ALTER TABLE ACK.ACKRITB2
 ADD PRIMARY KEY ( COL01_CHAR_2, COL02_CHAR_2);
COMMIT
 ;
ALTER TABLE ACK.ACKRITB1
 ADD FOREIGN KEY EX6T1FK1 ( COL01_CHAR_2, COL02_CHAR_2)
 REFERENCES ACK.ACKRITB2;
COMMIT
 ;
ALTER TABLE ACK.ACKRITB1
 ADD CONSTRAINT ACKRITB1_CHKCNSTR
 CHECK ( COL01_CHAR_2 ¬= '01');
COMMIT;

CHECK PLUS JCL for example 6

//         JOB
//CHECK06    EXEC PGM=ACKUMAIN,
//           PARM=(DECA,ACKEX06,NEW,,'MSGLEVEL(1)')
//STEPLIB    DD
DISP=SHR,DSN=product.libraries
//           DD DISP=SHR,DSN=DB2.DSNEXIT
//           DD DISP=SHR,DSN=DB2.DSNLOAD
//SYSIN       DD *
  CHECK DATA TABLESPACE ACKRIDB1.ACKRITS1
              DISCARDFMT SQLDEL
              DISCARDSERIALIZE YES
              SCOPE PENDING
              CHECKIXLEVEL 0
              CHECKTSLEVEL 0
/*
//SYSPRINT   DD DSN=ACK.EXAMP06.SYSPRINT,
//            UNIT=SYSDA,SPACE=(CYL,(1,1)),DISP=(NEW,CATLG)
//UTPRINT    DD SYSOUT=*
//SYSDISC        DD DSN=ACK.EXAMPLE6.SYSDISC,
//               DISP=(MOD,CATLG,CATLG),
// UNIT=WORK,SPACE=(TRK,(1,1))
//SYSERR     DD DSN=ACK.EXAMPLE6.SYSERR,
//                DISP=(MOD,CATLG,CATLG),
//                UNIT=WORK,SPACE=(TRK,(1,1))
//SORTWK01 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK02 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK03 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK04 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK05 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK06 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK07 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK08 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK09 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK10 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK11 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW
//SORTWK12 DD UNIT=WORK,SPACE=(CYL,(10,10)),DISP=NEW


CHECK PLUS SYSPRINT for example 6 

                     ***** B M C   C H E C K  P L U S  F O R   D B 2   V10R1.00   *****
                                   (C) COPYRIGHT 1993 - 2011 BMC SOFTWARE, INC.
            CHECK PLUS TECHNOLOGY IS PROTECTED BY ONE OR MORE OF THE FOLLOWING U.S. PATENTS: 5,579,515; 6,163,783; AND 5,860,069
BMC50001I    UTILITY EXECUTION STARTING 2/10/2011 10:53:06 ...
BMC50002I    UTILITY ID = 'ACKEX06'. DB2 SUBSYSTEM ID = 'DEDR'. OPTION MODULE = 'ACK$OPTS'.
BMC50471I z/OS 1.10.0,PID=HBB7750,DFSMS FOR Z/OS=1.10.0,DB2=9.1.0
BMC50471I REGION=0M,It 16M=8812K,ABOVE 16M=1408640K,IEFUSI=NO,CPUS=3
BMC50471I MEMLIMIT=17592186040320M,AVAILABLE=17592186040320M,MEMLIMIT SET BY:REGION=0
BMC50471I   CHECK PLUS FOR DB2--V10.01.00
BMC50471I      NO MAINTENANCE TO REPORT
BMC50471I   DB2 UTILITIES COMMON CODE--V10.01.00
BMC50471I      NO MAINTENANCE TO REPORT
BMC50471I   SOLUTION COMMON CODE--V10.01.00
BMC50471I      NO MAINTENANCE TO REPORT
BMC50471I   BMCSORT ENGINE--V02.03.01
BMC50471I      NO MAINTENANCE TO REPORT
BMC50471I   BMC STATS API--V10.01.00
BMC50471I      NO MAINTENANCE TO REPORT
BMC50471I ACFORTSS=YES                LOCKROW=YES                     SQLDELAY=3
BMC50471I DRNDELAY=3                  MAXP=5                          SQLRETRY=100
BMC50471I DRNRETRY=10                 MSGLEVEL=1                      UXSTATE=SUP
BMC50471I DRNWAIT=NONE                OPNDB2ID=YES                    WBUFFS=20
BMC50471I DSER=NO                     PLAN=ACKQA                      WORKUNIT=SYSALLDA
BMC50471I DSPLOCKS=NONE               SMAX=16                         XBLKS=3
BMC50471I FILECHK=WARN                SMCORE=(0K,0K)                  ZIIP=ENABLED
BMC50471I LOADDECP=NO                 SORTNUM=32

BMC50471I DB2 DSNHDECP MODULE SETTINGS:
BMC50471I VERSION                       = 910
BMC50471I SUBSYSTEM DEFAULT             = DEDR
BMC50471I CHARACTER SET                 = ALPHANUM
BMC50471I DATE FORMAT                   = USA
BMC50471I TIME FORMAT                   = USA
BMC50471I LOCAL DATE LENGTH             = 0
BMC50471I LOCAL TIME LENGTH             = 0
BMC50471I DECIMAL POINT                 = PERIOD
BMC50471I DECIMAL ARITHMETIC            = 15
BMC50471I DELIMITER                     = DEFAULT
BMC50471I SQL DELIMITER                 = DEFAULT
BMC50471I ENCODING SCHEME               = EBCDIC
BMC50471I APPL. ENCODING SCHEME         = EBCDIC
BMC50471I MIXED                         = NO
BMC50471I EBCDIC CCSID                  = (37,65534,65534)
BMC50471I ASCII CCSID                   = (819,65534,65534)
BMC50471I UNICODE CCSID                 = (367,1208,1200)

BMC50028I DB2 MODE = NFM
BMC50471I BMC_BMCUTIL          ='BMCUTIL.CMN_BMCUTIL'
BMC50471I BMC_BMCSYNC          ='BMCUTIL.CMN_BMCSYNC'
BMC50471I BMC_BMCHIST          ='BMCUTIL.CMN_BMCHIST'
BMC50471I BMC_BMCRELS          ='BMCUTIL.CMN_RELS'
BMC50471I BMC_BMCFKEY          ='BMCUTIL.CMN_FKEY'
BMC50471I BMC_BMCPKEY          ='BMCUTIL.CMN_PKEY'
BMC50471I BMC_BMCKEYS          ='BMCUTIL.CMN_KEYS'
BMC50102I CHECK DATA TABLESPACE ACKRIDB1.ACKRITS1
BMC50102I      DISCARDFMT SQLDEL
BMC50102I      DISCARDSERIALIZE YES
BMC50102I      SCOPE PENDING
BMC50102I      CHECKIXLEVEL 0
BMC50102I      CHECKTSLEVEL 0
BMC50041I 0: ZIIP ENABLED (0) USING XBM SUBSYSTEM XBMA
BMC50004I   UTILINIT PHASE COMPLETE. ELAPSED TIME = 00:00:00

BMC50474I   It 16M = 8320K, ABOVE 16M = 1401732K, CPUS = 3
BMC50398I   CHECK PROCESSING CONSTRAINED BY SORT WORK FILES

BMC52601I   STARTING CHECK DATA FOR THE FOLLOWING :
BMC52602I   PK FOR TABLE ACK.ACKRITB2 USING IX.ACK.ACKRIX03
BMC52603I   TCC ACK.ACKRITB1.ACKRITB1_CHKCNSTR USING TS.ACKRIDB1.ACKRITS1
BMC52603I   FK ACK.ACKRITB1.EX6T1FK1 USING TS.ACKRIDB1.ACKRITS1
BMC52230I   MAX TASKS = 1, MAX PARTS/TASK = 13, SORTWKS/TASK = 12, MAX OPEN PARTS/TASK = 13, MAX INDEXES/TASK = 3

BMC50894I   PAGE EXTERNALIZATION PROCESS STARTING AT 2/10/2011 10:53:08

BMC50650I   ESTABLISHING A POINT OF CONSISTENCY FOR:
BMC50651I   SPACE ACKRIDB1.ACKRITS1 PART(0)
BMC50651I   SPACE ACKRIDB1.ACKRIX03 PART(0)

BMC50895I   PAGE EXTERNALIZATION PROCESS COMPLETE. ELAPSED TIME = 00:00:01

BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A012' READ 1 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A011' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A010' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A009' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A008' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A007' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A006' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A005' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A004' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A003' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A002' READ 2 PAGES
BMC52476W TABLE CHECK CONSTRAINT VIOLATION. TABLE = 'ACK.ACKRITB1', CONSTRAINT = 'ACKRITB1_CHKCNSTR'
BMC52471I !COL01_CHAR_2='04'

BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRITS1.I0001.A001' READ 2 PAGES
BMC52286I 1:  CHECKING OF DATASET 'DEDRCAT.DSNDBD.ACKRIDB1.ACKRIX03.I0001.A001' READ 5 PAGES

BMC50481I 1:  SORT COMPLETE. ELAPSED TIME = 00:00:01
BMC50481I 1:  CHECK TASK COMPLETE. ELAPSED TIME = 00:00:01
BMC52606I TCC ACK.ACKRITB1.ACKRITB1_CHKCNSTR , 100 ROWS CHECKED, 1 VIOLATIONS FOUND
BMC52606I FK ACK.ACKRITB1.EX6T1FK1 , 100 KEYS CHECKED, 4 VIOLATIONS FOUND
BMC50476I DDNAME = SYSERR, I/OS = 2, I/O WAITS = 2, RDB LOCK WAITS = 0

BMC52288I CHECK ERROR SUMMARY: PAGE EXCEPTIONS-0, CONSTRAINT VIOLATIONS-5
BMC50004I CHECK PHASE COMPLETE. ELAPSED TIME = 00:00:03

BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 2
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 3
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 4
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 5
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 6
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 7
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 8
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 9
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 10
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 11
BMC52630I CHECK PENDING STATUS HAS BEEN RESET (OFF) FOR ACKRIDB1.ACKRITS1 PART 12
BMC52610I CREATOR.TABLE.CONSTRAINT ROW-ID KEY
BMC52611W ACK.ACKRITB1.EX6T1FK1   0000020100 '05','HK'
BMC52611W ACK.ACKRITB1.EX6T1FK1   0000020200 '05','OM'
BMC52611W ACK.ACKRITB1.EX6T1FK1   0000020300 '05','UB'
BMC52611W ACK.ACKRITB1.EX6T1FK1   0000020400 '05','WX'
BMC50476I DDNAME = SYSERR, I/OS = 1, I/O WAITS = 1, RDB LOCK WAITS = 0
BMC50476I DDNAME = SYSDISC, I/OS = 1, I/O WAITS = 1, RDB LOCK WAITS = 0
BMC50004I FIXRI PHASE COMPLETE. ELAPSED TIME = 00:00:00

BMC50041I 0: ZIIP NOT ENABLED (0) USING XBM SUBSYSTEM X

Discard data set for example 6

DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'HK' ;
DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'OM' ;
DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'UB' ;
DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'WX' ;


ACKESQL JCL for example 6

//CHECK06A    EXEC PGM=ACKESQL,
//            PARM=(DECA,ACK0830,10000,,,RESETLOCK)
//STEPLIB   DD DISP=SHR,DSN=BMCACK.DBLINK
//          DD DISP=SHR,DSN=BMCACK.XXLINK
//          DD DISP=SHR,DSN=BMCACK.BBLINK
//          DD DISP=SHR,DSN=BMCACK.UDBLINK
//          DD DISP=SHR,DSN=SYS3.DSNEXIT
//          DD DISP=SHR,DSN=CSGI.DSNLOAD
/SYSIN     DD DSN=ACK.EXAMP06.SYSDISC,DISP=SHR
//SYSPRINT  DD DSN=ACK.EXAMP6B.SYSPRINT,
//           UNIT=SYSDA,SPACE=(CYL,(1,1)),DISP=(NEW,CATLG)
//SYSABEND  DD SYSOUT=*

ACKESQL output for example 6 

              ***** B M C  C H E C K  P L U S  F O R  D B 2 V10R1.00  *****
                           (C) COPYRIGHT 1993 - 2011 BMC SOFTWARE, INC.
  CHECK PLUS TECHNOLOGY IS PROTECTED BY ONE OR MORE OF THE FOLLOWING U.S. PATENTS: 5,579,515; 6,163,783; AND 5,860,069
BMC50001I  UTILITY EXECUTION STARTING 2/10/2011 10:23:53 ...
BMC52334I  PLANNAME = ACKQA. DB2 SUBSYSTEM ID = DEDR
BMC52332I  COMMIT RATE 10000, STARTING AT RECORD # 1
BMC52340I  USING RECORD LENGTH -> 367
             LOCK TABLE ACK.ACKRITB1 IN EXCLUSIVE MODE
             NOTE -> COMMIT RATE SET TO 0 TO PRESERVE TABLE LOCK
BMC52335I 1)         DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'HK'
BMC52335I 2)         DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'OM'
BMC52335I 3)         DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'UB'
BMC52335I 4)         DELETE FROM ACK.ACKRITB1 WHERE COL01_CHAR_2 = '05' AND COL02_CHAR_2 = 'WX'
BMC52336I   STATEMENTS EXECUTED = 4, THRU RECORD # = 4

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*