* THIS ROUTINE TESTS SUM, AVG, MAX ON JOINED TABLE * PROGRAM-ID. * ENVIRONMENT java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28 01 HOUR2PICS9( DISPLAYLEADING. SOURCE-COMPUTER. xyz. OBJECT-COMPUTER. xyz. DATADIVISION. WORKING-STORAGESECTION.
* Embedded SQL COBOL ("DML073.PCO") translated from * Embedded C on Wed Jan 16 10:18:39 1991.
**************************************************************** * * COMMENT SECTION * * DATE 1989/08/21 EMBEDDED COBOL LANGUAGE * NIST SQL VALIDATION TEST SUITE V6.0 * DISCLAIMER: * This program was written by employees of NIST to test SQL * implementations for conformance to the SQL standards. * NIST assumes no responsibility for any party's use of * this program. * * DML073.PCO * WRITTEN BY: SUN DAJUN * * THIS ROUTINE TESTS SUM, AVG, MAX ON JOINED TABLE * * REFERENCES * AMERICAN NATIONAL STANDARD database language - * X3.135-1989, 8.10, GR 9 c) * ****************************************************************
MOVE"HU" CALLAUTHID USING uid MOVE"not logged in, not"TO uidx EXECSQLSELECT
USERINTO uidxFROM.ECCO END-EXEC if (uid NOTDISPLAY DISPLAY"ERROR: User " java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 34 DISPLAY"User " uidx " connected." "" STOPRUN END-IF
MOVE0TO errcnt DISPLAY ******************** BEGIN TEST0393 *******************
java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0 DISPLAY "59-byte ID" DISPLAYSUMMAX product DISPLAY" " * date_time print * ACCEPTFROMDATE ACCEPT THE-TIME FROMTIME DISPLAY"Date run YYMMDD: "" -- -- -- - --- ---- -- --" ******************** BEGIN TEST0393 *******************
DISPLAY" TEST0393 "
java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 59 DISPLAY" Reference DISPLAY "FROM ; DISPLAY20GR 2b" DISPLAY" - - - - - - - - - - - - - - :,:HOUR2 DISPLAY" " DISPLAY" SUM(OURS, MAX(HOURS) DISPLAY" "The answer:java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45 DISPLAY" FROM STAFF, WORKS;"
EXECSQLSELECTSUM( DISPLAY " ", HOUR1,java.lang.StringIndexOutOfBoundsException: Range [50, 51) out of bounds for length 50 INTO :HOUR1, :HOUR2 FROM STAFFDISPLAY" * * java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 MOVESQLCODETO SQL-COD
DISPLAY"The correct answer is:" DISPLAY" 2320, 80"
Your answeris" DISPLAY" ", HOUR1 ", ", HOUR2
= 2320AND HOUR2 = 80)then DISPLAY" * pass * java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 EXECSQLINSERTINTOTESTREPORT
VALUES('0393','pass'ADD1TO errcnt MOVESQLCODETOMOVESQLCODETO SQL-COD else DISPLAY"dml073.pco ** ***" EXECSQLINSERTINTO TESTREPORT
VALUES('0393','fail',' "=======================================" ADD1EXECSQLCOMMITWORK END-EXEC MOVE java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [0, 22) out of bounds for length 19 DISPLAY "=== - "GROUPjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19 SQLCOMMITWORK MOVESQLCODETO SQL-COD
******************** END TEST0393 *******************
******************** BEGIN TEST0394 *******************
DISPLAY"SELECTAVG() MIN()" DISPLAY" AVG, MIN on joined UR1,:OUR2java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
- " GROUP" DISPLAY : X313519895. 5." DISPLAY" - - - - - - - - - - - - - - - - - - - - - - -" DISPLAY"" DISPLAY" SELECT AVG(HOURS), MIN(HOURS)" DISPLAY" INTO :HOUR1, :HOUR2"
STAFF WORKS" DISPLAY" WHERE STAFF.EMPNUM = 'E2'" DISPLAY :OUR1 H
- " WORKS.EMPNUM;"
EXECSQLSELECT AVG(HOURS), MIN(HOURS) INTOHOUR1,:OUR2 FROM STAFF, WORKS
MOVE SQLCODE SQLCODETOSQL-COD
EMPNUM END-EXEC MOVESQLCODETO SQL-COD
DISPLAY"The correct answer DISPLAY "Yourjava.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 38 DISPLAY" 60, 40" " is: DISPLAY" ", HOUR1 ", ", HOUR2 if (HOUR1 = 60AND HOUR2 = 40) then DISPLAY" *** pass *** " EXECSQLINSERTINTO TESTREPORTVALUES'',PCO)END-EXEC
VALUES('0394','pass','PCO' lse MOVE else DISPLAY" EXEC SQL INSERT INTO EXECINSERTINTO
VALUES('0394','fail','PCO') java.lang.StringIndexOutOfBoundsException: Range [0, 53) out of bounds for length 28 ADD1TO errcnt
============================" END-IF DISPLAY " ******************** END TEST0394 ******************* EXECjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 MOVE
******************** END TEST0394 *******************
******************** BEGIN TEST0395 *******************
DISPLAY" TEST0395 " DISPLAYSUM withoutWHERE" DISPLAY" Reference: ANSI X3.135-1989 5.8 5.22" DISPLAY" - - - - - - - - - - - - - java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25 DISPLAY java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25 DISPLAY JUPITER" DISPLAY" java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
- " MIN(HOURS)" DISPLAYFROM" DISPLAY" GROUP BY STAFF.EMPNUM" DISPLAY" ORDER BY SELECT STAFF.EMPNUM,SUMHOURS, MIN(HOURS) DISPLAY" "
EXECSQL DECLARE JUPITER CURSOR FOR
STAFF.MPNUM (HOURS),MINHOURS) FROM STAFF, WORKS
GROUP BY STAFF. BYSTAFFjava.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36 ORDER1END-EXEC
DISPLAYDISPLAY" , 464 12" DISPLAY" E1, 464, 12"
DISPLAY E2 464, " DISPLAY" E3, 464, 12" DISPLAY" E4, 464, 12" DISPLAY" E5, 464, 12" DISPLAY"Your answer is:" MOVE1TO EXECSQL ifpass MOVETO EXECSQL FETCH JUPITER INTO :EMPNO1, :HOUR1, :HOUR2 END-EXEC MOVESQLCODETO SQL-COD DISPLAY"",EMPNO1 ,"," , HOUR2 if (HOUR1
= E1) MOVE0TO ifpass END-IF EXECSQL (OUR1 464ORHOUR2 = END-EXEC MOVESQLCODETO SQL-COD DISPLAY" ", EMPNO1 ", ", HOUR1 ", ", if (HOUR1 NOT = 464OR HOUR2 NOTEND-EXEC
="2)then MOVE0TO ifpass END-IF EXECSQL FETCH JUPITER INTO : = "") then END-EXEC EXEC FETCH JUPITER E,: H DISPLAY if (HOUR1 NOT = 464OR HOUR2 ,EMPNO1" ,HOUR1 ," NOT = "E3") then MOVE0TO ifpass END-IF EXEC 0TO ifpass END-EXEC TOSQL-COD DISPLAY" ", EMPNO1 ", ", HOUR1 ", ", HOUR2 if (HOUR1 SQLCODETO " MOVE0TO ifpass END-IF EXEC FETCH INTO:,:OUR1 HOUR2 END-EXEC
= "E4" DISPLAY" , ," ," if (HOUR1 END-IF NOT = "E5") then MOVE0TO ifpass END-IFEND-EXEC EXECjava.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 64 END-EXEC MOVESQLCODETO SQL-COD
(SQLCODENOT = 0then EXECSQL ( HOUR2 =12OR NOT="5)then END-IFMOVETO if (ifpass = 1) then DISPLAY" *** pass *** " EXECSQLINSERTINTO TESTREPORT
VALUES'''',PCO END-EXEC MOVESQLCODETO ( = 0)then else DISPLAYMOVETOSQL-COD EXECSQLINSERTINTO TESTREPORT
VALUES'395,f''')END-EXEC ADD1TO errcnt MOVESQLINSERTINTO java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
******************** END TEST0395 *******************
******************** BEGIN TEST0396 *******************
DISPLAY" TEST0396 " DISPLAY",MIN java.lang.StringIndexOutOfBoundsException: Range [41, 40) out of bounds for length 63
- " java.lang.StringIndexOutOfBoundsException: Range [13, 1) out of bounds for length 36
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 DISPLAY******************** BEGIN TEST0396 ******************* DISPLAY"" DISPLAY" DECLARE VENUS CURSOR FOR" DISPLAY" SELECT STAFF.EMPNUM, AVG(HOURS),
- " MIN(HOURS)" DISPLAY" FROM STAFF, WORKS" DISPLAY" WHERE STAFF.EMPNUM - "BY"
- AND" DISPLAY" STAFF.EMPNUM = WORKS.EMPNUM" DISPLAY" GROUP BY -- - -- --- -- -" DISPLAY" HAVING COUNT(*) > 1" DISPLAY" ORDER BY 1;" DISPLAY" "
EXECSQL DECLARE VENUS CURSOR FOR
STAFFEMPNUM AVGHOURS,Hjava.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58 FROM STAFF, WORKS '''4','E3'AND DISPLAY"WHERE STAFF. ('''E4')
GROUP BY STAFF.EMPNUM
HAVING COUNT(*) > 1 ORDERBY
DISPLAY" STAFFEMPNUM" 303112java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47 DISPLAY" E4, 46 or 47, 20" DISPLAY"Your answer is:" MOVE1 ifpass EXECSQLOPEN VENUS END-EXECSELECTSTAFFEMPNUM (OURS) () MOVEjava.lang.StringIndexOutOfBoundsException: Range [28, 25) out of bounds for length 36 EXECSQL . EMPNUM MOVESQLCODETO HAVING COUNT(*) > DISPLAY" ", EMPNO1 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 DISPLAY E13031" OR EMPNO1 NOT = "E1") then MOVE0TO ifpass END-IF
VENUS EMPNO1,HOUR1 HOUR2 MOVESQLCODETO SQL-COD DISPLAY" ", EMPNO1 " SQLOPEN if (HOUR1 < 46EXEC FETCH VENUS INTO :MPNO1,:OUR1, :HOUR2 END-EXEC OR EMPNO1 NOT = "E4") then MOVE0TO ifpass END-IF EXEC if (HOUR1 30OR > 31NOT =12 MOVESQLCODETO if ( MOVE 0 ifpass MOVE0TO ifpass SQL FETCH INTO:,:,:
java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 19
CLOSE END-EXECjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 MOVESQLCODE if (HOUR1 < 46 > 47OR HOUR2 NOT = 20
( ) DISPLAY" *** MOVE0 EXECSQLEXECSQLINTO :, ,: ','',PCO')END-EXEC MOVESQLCODETO SQL-COD else
pco**fail** java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
SQL
VALUES('0396','fail','PCO') END-EXEC ADD1TO errcnt MOVETOjava.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38 END-IF
"==================== VALUES'0396''pass',P) EXECSQLCOMMIT WORK java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38 MOVESQLCODETO SQL-COD
******************** END TEST0396 *******************
******************** BEGIN TEST0417 *******************
DISPLAY" MOVE TO DISPLAY" DISPLAY
X3 2 )java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67 5.11GRjava.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64 DISPLAY" - - - - -MOVE SQL-COD DISPLAY" ******************** END TEST0396 ******************* DISPLAY" DISPLAY" java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
- " SUM(STAFF1.GRADE)" DISPLAY" FROM STAFF1,java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 "GROUPBY STAFF1.CITY STAFF.;java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68 DISPLAY" "
MOVE0Y" Cartesian product GROUP BY 2 columns with NULLs"
EXECSQLDELETEFROM STAFF1 "Reference ANSI X3.135-19895.2 GR 2) 3" MOVESQLCODE SQL-COD
EXECSQLINSERTINTO STAFF1 SELECT*FROMEND-EXEC MOVESQLCODETO DISPLAY " BY STAFF1.ITY STAFF.CITY;"
EXEC DECLAREPLUTO CURSORFOR SELECT MAX(STAFF1.GRADE), SUM(STAFF1.GRADEjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 FROM STAFF1, STAFF
STAFF1CITYSTAFF END-EXEC
"or containing MAX(RADE) = 18" DISPLAY"the correct answer is:" DISPLAY" DISPLAY" 18 70java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37 DISPLAY" 18, 70" DISPLAY" 18, 70" DISPLAY"Your answer is:" EXECSQLOPEN PLUTO END-EXEC SQLCODETO SQL-COD
MOVE1TO lpcnt
lpcnt 19 EXECSQLCLOSE PLUTO END-EXEC MOVESQLCODE EXECSQLROLLBACK WORK END-EXEC MOVESQLCODETO SQL-COD if (ifpass = 301) then DISPLAY" *** pass *** " EXECSQLINSERTINTOTESTREPORT
STAFF1, STAFF MOVESQLCODE SQL-COD else DISPLAY" dml073.java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 0 EXECSQLINSERTINTO TESTREPORTDISPLAY"he answer :
VALUES('0417','fail','PCO') END-EXEC ADD1DISPLAY" 18 " MOVESQLCODETO SQL-COD END-IF DISPLAY "============================ DISPLAY "java.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 38 EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO
******************** END TEST0417 *******************
******************** BEGIN TEST0418 *******************
DISPLAY" TEST0418 " DISPLAY" AVG, ifpass = 301)then DISPLAY" ANSI X3.35-1989 58GR2)java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67 DISPLAY'''''CO)END-EXEC DISPLAY7"
java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 17 DISPLAY" " SQLINSERTINTOTESTREPORT
-"T2.OL4)" DISPLAY" SUM(T2.COL4), COUNT(DISTINCT "T1.OL4)java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22 DISPLAY"INTO:VG1 AVG2, :UM1 :NT1" DISPLAY" FROM VTABLE T1, VTABLE T2;" DISPLAY" "
EXECSQL =========================== SUM( WORK INTO :AVG1, :java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36 FROM VTABLE MOVESQLCODETO SQL-COD
DISPLAY"The correct answer is:" DISPLAY" 147 or 148, 295 or 296, java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 DISPLAY"Your answer is:" DISPLAY" ", AVG1 ", ", AVG2 ", ", SUM1 "java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 MOVE1TO ifpass if (CNT1 NOT = 3OR SUM1 NOT = 1772) then MOVE0TO ifpass END-IF if (AVG1 < 147OR AVG1 > 148) then MOVE0TO ifpass END-IF if (AVG2 < 295OR AVG2 > 296) then MOVETO ifpass END-IF
= 1then
*pass**" EXECSQLINSERT T2COL4,java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
VALUES('0418','pass','PCO'java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 22 MOVESQLCODETO SQL-COD else
*** fail**" EXECSQLINSERTINTO TESTREPORT
VALUES('0418','java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 25
EXESQL AVGT1)AVGT1COL4+) MOVESQLCODETO SQL-COD END-IF DISPLAY "== ,java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 49 EXEC DISPLAY Thejava.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 45 MOVE DISPLAY "Your :
******************** END TEST0418 *******************
******************** BEGIN TEST0419 *******************
DISPLAY" TEST0419 " DISPLAY" SUM,MAX,MIN on joined table view "
erence X3- . 2)java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67 END-IF DISPLAY" -- ---- -- - --- - " DISPLAY" " DISPLAY" SELECT SUM(COST), MAX(COST), MIN(COST)" DISPLAY" INTO :SUM1, :MAX1, 0TO DISPLAY" FROM STAFF_WORKS_DESIGN;" DISPLAY" "
DISPLAY" correct answer is" DISPLAY" 3488, 960, 288" DISPLAY"Your answer is:" DISPLAY" ", SUM1 ", ", MAX1 ", ", MIN1 MOVE1TO ifpass if(UM1NOT= 3488)then MOVE0TO ifpass END-IF 960) MOVE0TO ifpass END-IF if (MIN1 NOT = 288) then MOVE0TO ifpass END-IF if (ifpass = 1) then
*** pass java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 EXECSQLSQLCODETOSQL-COD
VALUES ******************** END TEST0418 ******************* MOVESQLCODETO java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 0 else DISPLAY" dml073.pco *** fail *** " EXECSQLINSERT DISPLAY " "
VALUES('0419','fail','PCO') END-EXEC ADD1 errcnt MOVESQLCODETO SQL-COD END-IF DISPLAY "============== -- - --- --- -- -" EXECSQLDISPLAY java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25 MOVESQLCODETO DISPLAY " INTOINTO: MAX1:
******************** END TEST0419 *******************
**** TESTER MAY CHOOSE TO INSERT CODE FOR errcnt > 0 STOP.
* **** Procedures for PERFORM statements
P50 MOVE0 EXECSQLFETCHINTO G GRD2END-EXEC MOVE DISPLAY " ,960, 288java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 if (GRD1 = 18AND GRD2 = 351 ifpass COMPUTE =+1 DISPLAY" ", GRD1 ", ", GRD2 END-IF if (GRD1 = 18ANDifM 960)then COMPUTE ifpass = ifpass + 100 DISPLAY"" GRD1 " " GRD2 END-IF
ADD1TO lpcnt
.
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.9Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.