* DISCLAIMER: * This program was reviewed by employees of NIST for * conformance to the SQL standards. * NIST assumes no responsibility for any party's use of * this program.
* 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 * X/Open SQL VALIDATION TEST SUITE V6.0 * * XOP702.PCO * WRITTEN BY: Colin O'Driscoll * * ALTER TABLE ADD COLUMN * * REFERENCES * X/Open CAE SQL * Section 5.3.2 ALTER TABLE * * <embedded SQL C program> * * DATE PROGRAM LAST CHANGED 2/11/94 * ****************************************************************
EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO SQL-COD *Added for re-test EXECSQL DROP TABLE COLUMN_TEST END-EXEC MOVESQLCODETO SQL-COD EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO SQL-COD EXECSQL CREATE TABLE COLUMN_TEST (COL1 CHAR(4)) END-EXEC MOVESQLCODETO SQL-COD
EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO SQL-COD
EXECSQLINSERTINTO COLUMN_TEST VALUES('BOOK') END-EXEC MOVESQLCODETO SQL-COD EXECSQLSELECT * INTO :col1 FROM COLUMN_TEST END-EXEC MOVESQLCODETO SQL-COD
if (col1 NOT = "BOOK") then DISPLAY"*** Problem found (TEST STEP NUMBER 1) ! *** " COMPUTE errflg = errflg + 1 END-IF DISPLAY"================================================="
EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO SQL-COD EXECSQLALTER TABLE COLUMN_TEST ADD COL2 DECIMAL END-EXEC MOVESQLCODETO SQL-COD EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO SQL-COD
EXECSQLSELECT * INTO
:col1,
:col2,
:col3,
:col4 FROM COLUMN_TEST END-EXEC MOVESQLCODETO SQL-COD
DISPLAY"col1 should be TEST, col2 should be 1." DISPLAY"col3 should be 2, col4 should be 3." DISPLAY"col1 is ", col1 ", col2 is ", col2 "." DISPLAY"col3 is ", col3 ", col4 is ", col4
if (col1 NOT = "TEST"OR col2 NOT = 1 OR col3 NOT = 2 OR col4 NOT = 3) then DISPLAY"*** Problem found (TEST STEP NUMBER 3) ! *** " COMPUTE errflg = errflg + 1 END-IF DISPLAY"================================================="
EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO SQL-COD EXECSQLALTER TABLE COLUMN_TEST ADD COL1 CHAR(4) END-EXEC MOVESQLCODETO SQL-COD DISPLAY"SQLSTATE should be 'S0021'" DISPLAY"SQLSTATE is " SQLSTATE if (SQLSTATE NOT = "S0021") then DISPLAY"*** Problem found (TEST STEP NUMBER 4) ! *** " COMPUTE errflg = errflg + 1 END-IF EXECSQLCOMMIT WORK END-EXEC MOVESQLCODETO SQL-COD DISPLAY"================================================="
DISPLAY"number of errors detected = ", errflg " " DISPLAY"### maximum number of errors is 4 ###"
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.