* All rights reserved. No part of this source code may be reproduced, * stored in a retrieval system, or transmitted, in any form or by means, * electronic, mechanical, photocopying, recording or otherwise, except * as stated in the end-user license agreement, without the prior * permission of the copyright owners.
* X/Open and the 'X' symbol are registered trademarks of X/Open Company * Limited in the UK and other countries.
**************************************************************** * * COMMENT SECTION * * DATE 1994/03/21 EMBEDDED C 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. * * XBASETAB.PC * WRITTEN BY: Colin O'Driscoll * * This routine initializes the contents of tables: * STAFF, PROJ, WORKS, STAFF3, VTABLE, and UPUNIQ * This routine may be run at any time to re-initialize tables. * ****************************************************************
EXECSQL BEGIN DECLARE SECTIONEND-EXEC
01 i PIC S9(9) DISPLAYSIGNLEADINGSEPARATE.
01 ii PIC S9(9) DISPLAYSIGNLEADINGSEPARATE.
01 iii PIC S9(9) DISPLAYSIGNLEADINGSEPARATE.
01 uid PIC X(18).
01 uidx PIC X(18). EXECSQLEND DECLARE SECTIONEND-EXEC
MOVE"XOPEN1"TO uid CALL"AUTHID"USING uid MOVE 0 TO errcnt DISPLAY"X/OPEN Extensions SQL Test Suite, V6.0, Embedded
- "COBOL, xbasetab.pco" DISPLAY "59-byte ID" DISPLAY"TEd Version #" *date_time print ACCEPT TO-DAY FROMDATE ACCEPT THE-TIME FROMTIME DISPLAY"Date run YYMMDD: " TO-DAY " at hhmmssff: " THE-TIME
EXECSQLDELETEFROM XOPEN1.ECCO END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO XOPEN1.ECCO VALUES ('NL') END-EXEC MOVE SQLCODE TO SQL-COD
EXECSQLDELETEFROM STAFF END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLDELETEFROM PROJ END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLDELETEFROM WORKS END-EXEC MOVE SQLCODE TO SQL-COD
EXECSQLINSERTINTO STAFF VALUES
('E1','Alice',12,'Deale') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO STAFF VALUES
('E2','Betty',10,'Vienna') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO STAFF VALUES
('E3','Carmen',13,'Vienna') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO STAFF VALUES
('E4','Don',12,'Deale') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO STAFF VALUES
('E5','Ed',13,'Akron') END-EXEC MOVE SQLCODE TO SQL-COD
EXECSQLINSERTINTO PROJ VALUES
('P1','MXSS','Design',10000,'Deale') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO PROJ VALUES
('P2','CALM','Code',30000,'Vienna') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO PROJ VALUES
('P3','SDP','Test',30000,'Tampa') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO PROJ VALUES
('P4','SDP','Design',20000,'Deale') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO PROJ VALUES
('P5','IRM','Test',10000,'Vienna') END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO PROJ VALUES
('P6','PAYR','Design',50000,'Deale') END-EXEC MOVE SQLCODE TO SQL-COD
EXECSQLINSERTINTO WORKS VALUES ('E1','P1',40) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E1','P2',20) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E1','P3',80) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E1','P4',20) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E1','P5',12) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E1','P6',12) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E2','P1',40) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E2','P2',80) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E3','P2',20) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E4','P2',20) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E4','P4',40) END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLINSERTINTO WORKS VALUES ('E4','P5',80) END-EXEC MOVE SQLCODE TO SQL-COD
EXECSQLSELECTCOUNT(*) INTO :i FROM PROJ END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLSELECTCOUNT(*) INTO :ii FROM STAFF END-EXEC MOVE SQLCODE TO SQL-COD EXECSQLSELECTCOUNT(*) INTO :iii FROM WORKS END-EXEC MOVE SQLCODE TO SQL-COD
if (i = 6 AND ii = 5 AND iii = 12) then DISPLAY"PROJ, STAFF, WORKS were created successfully!" else COMPUTE errcnt = errcnt + 1 DISPLAY"*************************************" DISPLAY"* PROJ, STAFF or WORKS ERROR !!! *" DISPLAY"*************************************" END-IF
EXECSQL COMMIT WORK END-EXEC MOVE SQLCODE TO SQL-COD
****** TESTER MAY CHOOSE TO INSERT CODE FOR errcnt > 0 STOPRUN.
* **** Procedures for PERFORM statements
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet)
¤
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 ist noch experimentell.