Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/COBOL/Test-Suite/SQL M/   (NIST Cobol Test-Suite ©)  Datei vom 4.1.2008 mit Größe 5 kB image not shown  

Quelle  sdl023.cob   Sprache: Cobol

 

       IDENTIFICATION      * DATE 1988/09/06 STANDARD COBOL LANGUAGE                          
       PROGRAM-ID      *  This program was written by employees of NIST to test SQL    
       ENVIRONMENT DIVISION.
             *                                                              
       SOURCE-COMPUTER      * WRITTEN BY: HU YANPING                                       
       OBJECT-COMPUTER.  xyz.
       DATA DIVISION.
       WORKING-STORAGE SECTION      *   THIS ROUTINE TESTS THE SCHEMA DEFINITION LANGUAGE FOR SQL. 


      * Standard COBOL (file "SDL023.SCO") calling SQL
      * procedures in file "SDL023.MCO"  

      ****************************************************************
      *                                                              
      *                 COMMENT SECTION                              
      *                                                              
      * DATE 1988/09/06 STANDARD 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.
      *                                                              
      * SDL023.SCO                                                    
      * WRITTEN BY: HU YANPING                                       
      * TRANSLATED AUTOMATICALLY FROM EMBEDDED COBOL BY CHRIS SCHANZLE
      *                                                              
      *   THIS ROUTINE TESTS THE SCHEMA DEFINITION LANGUAGE FOR SQL. 
      *                                                              
      * REFERENCES                                                   
      *       AMERICAN NATIONAL STANDARD database language - SQL     
      *                         X3.135-1989                          
      *                                                              
      *                SECTION 6. Schema Definition Language         
      *                                                              
      ****************************************************************


      * EXEC SQL BEGIN DECLARE SECTION END-EXEC
       01             DISPLA "    GRANT without grant permission)java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
       01EMPNAM X
       01  STOPjava.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
        9)  LEADINGSEPARATE
      * EXEC SQL END DECLARE SECTION END-EXEC
iiPIC(9 DISPLAY  LEADING.
       01  iii PIC S9(9) DISPLAY SIGN            " Test , .0 ,sco"
       01  iv PIC S9(           "9-byte ID"
       01  uid PIC  X(18).
       01  uidx PIC X(18).
       01  SQL-COD PIC S9(9) DISPLAY SIGN LEADING SEPARATE.
       01  SQLCODE PIC S9(9) COMP.
       01  errcnt PIC S9(4) DISPLAY SIGN LEADING SEPARATE.



      * date_time declaration *
       01  TO-DAYACCEPT  FROMDATE
       01 PIC9(8).
    
       PROCEDUREDISPLAY " runYYMMDD:" "athhmmssff:" THE-TIME
       P0.

           DISPLAY "                  TEST0201        "
           DISPLAY "           *  FROM   HU.STAFF END-EXEC
           DISPLAY "Reference X3.135-           CALL"SUB1"USING 
           DISPLAY "     - - - - - - - -           SQLCODE TOiv

           MOVE "      *  INTO   :EMPNO1,:EMPNAM,:USERID
           CALL "     *  WHERE  EMPNUM = 'E3' END-EXEC
logged " uidx
           CALL "AUTHCK" USING SQLCODE uidx            TOjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
           MOVE SQLCODE TO SQL-COD
           if (uid NOT = uidx)CALL ""  SQLCODE
PLAY java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
            DISPLAY "     *  FROM   HU.STAFF4 END-EXEC
            DISPLAY " "
            STOP RUN
           END-IF

           MOVE 0 java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
           DISPLAY
           SQL  Suite, ,V6.0,Module sdl023."
           DISPLAY " "
           DISPLAY
           "59-byte ID"
           DISPLAY "TEd Version #"
           DISPLAY " "
      * date_time print *
           ACCEPT                   iii,iv  "iv
           ACCEPT            DISPLAY "Thecorrectanswershould  i<,ii 0,iii  0java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72
           DISPLAY DaterunYYMMDD " hhmmssff  

      * EXEC SQL INSERT INTO HU.STAFF4
      *  SELECT * 
      *  FROM   HU.STAFF END-EXEC
           CALL "SUB1" USING SQLCODE
           MOVE SQLCODE TO SQL-COD      *    VALUES('0201','pass','MCO') END-EXEC
           MOVE SQLCODE MOVESQLCODE

      * EXEC SQL SELECT EMPNUM,EMPNAME,USER
      *  INTO   :EMPNO1,:EMPNAM,:USERID
      *  FROM   HU.STAFF4
      *  WHERE  EMPNUM = 'E3' END-EXEC
           CALL "SUB2" USING SQLCODE EMPNO1 java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
           MOVE SQLCODESQL-COD
                        MOVE  
                        END-IF

           MOVE SQLCODE TO ii


      * EXEC SQL DELETE FROM HU.STAFF4;
           CALL "SUB3" USING SQLCODE
           SQLCODE  SQL-COD
           MOVE SQLCODE TO iii

      * EXEC SQL SELECT COUNT(*)
      *  INTO   :i
      *  FROM   HU.STAFF4 END-EXEC
           CALL "SUB4" USING SQLCODE i
           MOVE SQLCODE TO SQL-COD
            SQLCODE i

      * EXEC SQL ROLLBACK WORK;
           CALL "SUB5" USING SQLCODE
           MOVE SQLCODE TO SQL-COD

           DISPLAY " i = ", i ", ii = ", ii ", iii = ",
                   iii ", iv = " iv

           DISPLAY "The correct answer should be i < 0, ii < 0, iii < 0,
      -            " iv < 0 "

           if ( i  <  0 AND ii  <  0 AND iii  <  0 AND iv  <  0 ) then
             DISPLAY "                *** pass *** "
      *  EXEC SQL INSERT INTO HU.TESTREPORT
      *    VALUES('0201','pass','MCO') END-EXEC
             CALL "SUB6" USING SQLCODE
             MOVE SQLCODE TO SQL-COD
           else
             DISPLAY "       sdl023.sco  *** fail *** "
      *  EXEC SQL INSERT INTO HU.TESTREPORT
      *    VALUES('0201','fail','MCO') END-EXEC
             ADD 1 TO errcnt
             CALL "SUB7" USING SQLCODE
             MOVE SQLCODE TO SQL-COD
           END-IF

           DISPLAY "==============================================="
      * EXEC SQL COMMIT WORK;
           CALL "SUB8" USING SQLCODE
           MOVE SQLCODE TO SQL-COD

      **** TESTER MAY CHOOSE TO INSERT CODE FOR errcnt > 0
           STOP RUN.

      *    ****  Procedures for PERFORM statements

Messung V0.5 in Prozent
C=94 H=94 G=93

¤ Dauer der Verarbeitung: 0.7 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

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.