-- SQL Test Suite, V6.0 , SQL Module xts798.mco
-- 59 -byte ID
--
MODULE XTS798
LANGUAGE COBOL
AUTHORIZATION CTS1
DECLARE F CURSOR FOR SELECT EMPNAME, NULLIF
(SALARY,HOURS)
FROM CTS1.STAFFb
WHERE SEX = 'M' AND PNUM NOT IN
('P1' ,'P2' ,'P3' ,'P6' ,'P8' )
AND (SALARY <> HOURS OR SALARY IS NULL OR HOURS IS NULL )
ORDER BY PNUM
DECLARE G CURSOR FOR SELECT NULLIF (EMPNAME,CITY),
SALARY
FROM CTS1.STAFFb
WHERE SEX = 'M' AND PNUM NOT IN
('P1' ,'P2' ,'P3' ,'P5' ,'P7' )
AND (EMPNAME <> CITY OR EMPNAME IS NULL OR CITY IS NULL )
ORDER BY PNUM
DECLARE H CURSOR
FOR SELECT * FROM CTS1.TEMP1426
ORDER BY EMPNAME
PROCEDURE SUB1 (SQLCODE , SQLSTATE,
:UIDX CHAR(18 ));
SELECT USER INTO :UIDX FROM CTS1.ECCO;
PROCEDURE SUB2 (SQLCODE , SQLSTATE);
ROLLBACK WORK;
PROCEDURE SUB3 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10000 ,'Kilroy' ,10000 ,'P4' ,'Athens' ,'M' );
PROCEDURE SUB4 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(15000 ,'Nickos' ,20000 ,'P6' ,'Nickos' ,'M' );
PROCEDURE SUB5 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(NULL ,'Nickos' ,NULL ,'P5' ,'Rhodes' ,'M' );
PROCEDURE SUB6 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10010 ,'George' ,NULL ,'P7' ,'Georgia' ,'M' );
PROCEDURE SUB7 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10005 ,NULL ,30000 ,'P8' ,NULL ,'M' );
PROCEDURE SUB8 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10001 ,'Gregory' ,12000 ,'P9' ,NULL ,'M' );
PROCEDURE SUB9 (SQLCODE , SQLSTATE);
OPEN F;
PROCEDURE SUB10 (SQLCODE , SQLSTATE,
:ENAME CHAR(20 ),
:SAL NUMERIC (9 ),
:INDIC1 NUMERIC (4 ));
FETCH F INTO :ENAME, :SAL:INDIC1;
PROCEDURE SUB11 (SQLCODE , SQLSTATE,
:ENAME CHAR(20 ),
:SAL NUMERIC (9 ),
:INDIC1 NUMERIC (4 ));
FETCH F INTO :ENAME, :SAL:INDIC1;
PROCEDURE SUB12 (SQLCODE , SQLSTATE,
:ENAME CHAR(20 ),
:SAL NUMERIC (9 ),
:INDIC1 NUMERIC (4 ));
FETCH F INTO :ENAME, :SAL:INDIC1;
PROCEDURE SUB13 (SQLCODE , SQLSTATE);
CLOSE F;
PROCEDURE SUB14 (SQLCODE , SQLSTATE);
OPEN G;
PROCEDURE SUB15 (SQLCODE , SQLSTATE,
:ENAME CHAR(20 ),
:INDIC1 NUMERIC (4 ),
:SAL NUMERIC (9 ));
FETCH G INTO :ENAME:INDIC1, :SAL;
PROCEDURE SUB16 (SQLCODE , SQLSTATE,
:ENAME CHAR(20 ),
:INDIC1 NUMERIC (4 ),
:SAL NUMERIC (9 ));
FETCH G INTO :ENAME:INDIC1, :SAL;
PROCEDURE SUB17 (SQLCODE , SQLSTATE,
:ENAME CHAR(20 ),
:INDIC1 NUMERIC (4 ),
:SAL NUMERIC (9 ));
FETCH G INTO :ENAME:INDIC1, :SAL;
PROCEDURE SUB18 (SQLCODE , SQLSTATE);
CLOSE G;
PROCEDURE SUB19 (SQLCODE , SQLSTATE);
ROLLBACK WORK;
PROCEDURE SUB20 (SQLCODE , SQLSTATE);
CREATE TABLE TEMP1426
(SALARY DECIMAL(6 ),
EMPNAME CHAR(20 ));
PROCEDURE SUB21 (SQLCODE , SQLSTATE);
COMMIT WORK;
PROCEDURE SUB22 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10000 ,'Kilroy' ,10000 ,'P4' ,'Athens' ,'M' );
PROCEDURE SUB23 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(15000 ,'Nickos' ,20000 ,'P6' ,'Nickos' ,'M' );
PROCEDURE SUB24 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(NULL ,'Nickos' ,NULL ,'P5' ,'Rhodes' ,'M' );
PROCEDURE SUB25 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10010 ,'George' ,NULL ,'P7' ,'Georgia' ,'M' );
PROCEDURE SUB26 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10005 ,NULL ,30000 ,'P8' ,NULL ,'M' );
PROCEDURE SUB27 (SQLCODE , SQLSTATE);
INSERT INTO STAFFb
VALUES(10001 ,'Gregory' ,12000 ,'P9' ,NULL ,'M' );
PROCEDURE SUB28 (SQLCODE , SQLSTATE);
INSERT INTO TEMP1426
SELECT NULLIF (10000 ,SALARY), EMPNAME FROM STAFFb
WHERE SEX = 'M' AND PNUM NOT IN
('P1' ,'P2' ,'P3' ,'P6' ,'P8' ,'P9' );
PROCEDURE SUB29 (SQLCODE , SQLSTATE);
OPEN H;
PROCEDURE SUB30 (SQLCODE , SQLSTATE,
:SAL NUMERIC (9 ),
:INDIC1 NUMERIC (4 ),
:ENAME CHAR(20 ));
FETCH H INTO :SAL:INDIC1, :ENAME;
PROCEDURE SUB31 (SQLCODE , SQLSTATE,
:SAL NUMERIC (9 ),
:INDIC1 NUMERIC (4 ),
:ENAME CHAR(20 ));
FETCH H INTO :SAL:INDIC1, :ENAME;
PROCEDURE SUB32 (SQLCODE , SQLSTATE,
:SAL NUMERIC (9 ),
:INDIC1 NUMERIC (4 ),
:ENAME CHAR(20 ));
FETCH H INTO :SAL:INDIC1, :ENAME;
PROCEDURE SUB33 (SQLCODE , SQLSTATE);
CLOSE H;
PROCEDURE SUB34 (SQLCODE , SQLSTATE);
ROLLBACK WORK;
PROCEDURE SUB35 (SQLCODE , SQLSTATE);
DROP TABLE TEMP1426 CASCADE;
PROCEDURE SUB36 (SQLCODE , SQLSTATE);
COMMIT WORK;
PROCEDURE SUB37 (SQLCODE , SQLSTATE);
INSERT INTO CTS1.TESTREPORT
VALUES('7002' ,'pass' ,'MCO' );
PROCEDURE SUB38 (SQLCODE , SQLSTATE);
INSERT INTO CTS1.TESTREPORT
VALUES('7002' ,'fail' ,'MCO' );
PROCEDURE SUB39 (SQLCODE , SQLSTATE);
COMMIT WORK;
Messung V0.5 in Prozent C=100 H=98 G=98
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet am 2026-06-08)
¤
*© Formatika GbR, Deutschland