* Standard COBOL (file "DML130.SCO") calling SQL * procedures in file "DML130.MCO".
**************************************************************** * * COMMENT SECTION * * DATE 1994/7/28 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. * * DML130.SCO * WRITTEN BY: David W. Flater * TRANSLATED AUTOMATICALLY FROM EMBEDDED COBOL BY CHRIS SCHANZLE * * This routine tests data type semantics with NULL and NOT * NULL and the Information Schema. * * REFERENCES * FIPS PUB 127-2 14.1 Transitional SQL * ANSI SQL-1992 * ****************************************************************
DISPLAY"INSERT INTO CH1 VALUES ('FOO', '', '0123456789');" * EXEC SQL INSERT INTO CH1 VALUES ('FOO', '', '0123456789') * ; CALL"SUB7"USING SQLCODE SQLSTATE MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY" "
MOVE"xxxxxxxxxx"TO x1 MOVE"x"TO x2 MOVE"xxxxxxxxxx"TO x3 DISPLAY"SELECT CH1A, CH1B, CH1C" DISPLAY" INTO :x1, :x2, :x3 FROM CH1;" * EXEC SQL SELECT CH1A, CH1B, CH1C * INTO :x1, :x2, :x3 FROM CH1; CALL"SUB8"USING SQLCODE SQLSTATE x1 x2 x3 MOVE SQLCODE TO SQL-COD
PERFORM CHCKOK DISPLAY" "
*9.1 GR.3.c
DISPLAY"x1 should be 'FOO '; its value is '", x1, "'" DISPLAY"x2 should be ' '; its value is '", x2, "'" DISPLAY"x3 should be '0123456789'; its value is '", x3, "'"
if (x1 NOT = "FOO ") then MOVE 0 TO flag END-IF if (x2 NOT = " ") then MOVE 0 TO flag END-IF if (x3 NOT = "0123456789") then MOVE 0 TO flag END-IF
DISPLAY"x5 is too short." DISPLAY"SELECT CH1A, CH1B, CH1C" DISPLAY" INTO :x1, :x2, :x5 FROM CH1;" * EXEC SQL SELECT CH1A, CH1B, CH1C * INTO :x1, :x2, :x5 FROM CH1; CALL"SUB9"USING SQLCODE SQLSTATE x1 x2 x5 MOVE SQLCODE TO SQL-COD
DISPLAY"SQLCODE should be >= 0; its value is ", SQL-COD if (SQLCODE < 0) then MOVE 0 TO flag END-IF
DISPLAY"SQLSTATE should be 01004; its value is ", SQLSTATE if (SQLSTATE NOT = "01004") then MOVE 0 TO flag END-IF
DISPLAY"x1 should be 'FOO '; its value is '", x1, "'" DISPLAY"x2 should be ' '; its value is '", x2, "'" DISPLAY"x5 should be '0123'; its value is '", x5, "'"
if (x1 NOT = "FOO ") then MOVE 0 TO flag END-IF if (x2 NOT = " ") then MOVE 0 TO flag END-IF if (x5 NOT = "0123") then MOVE 0 TO flag END-IF
*9.2 GR.3.b.ii
DISPLAY"INSERT INTO CH1 VALUES ('FOO'," DISPLAY" 'F', 'LITTLETOOLONG');" * EXEC SQL INSERT INTO CH1 VALUES ('FOO', * 'F', 'LITTLETOOLONG'); CALL"SUB10"USING SQLCODE SQLSTATE MOVE SQLCODE TO SQL-COD
DISPLAY"SQLCODE should be < 0; its value is ", SQL-COD if (SQLCODE NOT < 0) then MOVE 0 TO flag END-IF
DISPLAY"SQLSTATE should be 22001; its value is ", SQLSTATE *The subclass is significant! if (SQLSTATE NOT = "22001") then MOVE 0 TO flag END-IF
*9.2 GR.3.b.i
DISPLAY"DELETE FROM CH1;" * EXEC SQL DELETE FROM CH1; CALL"SUB11"USING SQLCODE SQLSTATE MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY" "
MOVE"xxxxxxxxxx"TO x1 MOVE"x"TO x2 MOVE"xxxxxxxxxx"TO x3 DISPLAY"SELECT CH1A, CH1B, CH1C" DISPLAY" INTO :x1, :x2, :x3 FROM CH1;" * EXEC SQL SELECT CH1A, CH1B, CH1C * INTO :x1, :x2, :x3 FROM CH1; CALL"SUB13"USING SQLCODE SQLSTATE x1 x2 x3 MOVE SQLCODE TO SQL-COD
PERFORM CHCKOK DISPLAY" "
DISPLAY"x1 should be 'FOO '; its value is '", x1, "'" DISPLAY"x2 should be 'F'; its value is '", x2, "'" DISPLAY"x3 should be 'BLANKS '; its value is '", x3, "'"
if (x1 NOT = "FOO ") then MOVE 0 TO flag END-IF if (x2 NOT = "F") then MOVE 0 TO flag END-IF if (x3 NOT = "BLANKS ") then MOVE 0 TO flag END-IF
*9.2 GR.3.k DISPLAY"INSERT INTO NUM1 VALUES (9.99, -99, 9);" * EXEC SQL INSERT INTO NUM1 VALUES (9.99, -99, 9); CALL"SUB14"USING SQLCODE SQLSTATE MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY" "
* EXEC SQL COMMIT WORK; CALL"SUB28"USING SQLCODE SQLSTATE MOVE SQLCODE TO SQL-COD ******************** END TEST0678 ******************** ******************** BEGIN TEST0679 ******************* MOVE 1 TO flag
MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.TABLES" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND TABLE_TYPE = 'BASE TABLE';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.TABLES * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND TABLE_TYPE = 'BASE TABLE'; CALL"SUB31"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
COMPUTE int1 = -2 DISPLAY"SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.VIEWS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.VIEWS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES'; CALL"SUB32"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 0; its value is ", int1 if (int1 NOT = 0) then MOVE 0 TO flag END-IF
* FLAAG CHAR DEFAULT 'Y' MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'FLAAG' AND ORDINAL_POSITION =
- " 1" DISPLAY" AND COLUMN_DEF = '''Y''' AND DATA_TYPE =
- " 'CHARACTER'" DISPLAY" AND CHAR_MAX_LENGTH = 1 AND CHAR_OCTET_LENGTH" DISPLAY" > 0 AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'FLAAG' AND ORDINAL_POSITION = 1 * AND COLUMN_DEF = '''Y''' AND DATA_TYPE = 'CHARACTER' * AND CHAR_MAX_LENGTH = 1 AND CHAR_OCTET_LENGTH * > 0 AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB33"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* KODE CHAR (5) NOT NULL MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'KODE' AND ORDINAL_POSITION =
- " 2" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'CHARACTER'" DISPLAY" AND CHAR_MAX_LENGTH = 5 AND CHAR_OCTET_LENGTH" DISPLAY" > 3 AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'NO';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'KODE' AND ORDINAL_POSITION = 2 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'CHARACTER' * AND CHAR_MAX_LENGTH = 5 AND CHAR_OCTET_LENGTH * > 3 AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'NO'; CALL"SUB34"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* AMPL REAL DEFAULT 3 MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'AMPL' AND ORDINAL_POSITION =
- " 3" DISPLAY" AND COLUMN_DEF IS NOT NULL AND DATA_TYPE =
- " 'REAL'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX" DISPLAY" = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'AMPL' AND ORDINAL_POSITION = 3 * AND COLUMN_DEF IS NOT NULL AND DATA_TYPE = 'REAL' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX * = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB35"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* COORD DOUBLE PRECISION MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'COORD' AND ORDINAL_POSITION =
- " 4" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DOUBLE
- " PRECISION'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC > 8 AND NUM_PREC_RADIX" DISPLAY" = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'COORD' AND ORDINAL_POSITION = 4 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DOUBLE PRECISION' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC > 8 AND NUM_PREC_RADIX * = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB36"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* SWAY FLOAT MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'SWAY' AND ORDINAL_POSITION =
- " 5" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE = 'FLOAT'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX" DISPLAY" = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'SWAY' AND ORDINAL_POSITION = 5 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'FLOAT' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX * = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB37"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* REVS INTEGER MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'REVS' AND ORDINAL_POSITION =
- " 6" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'INTEGER'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND" DISPLAY" (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10)" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'REVS' AND ORDINAL_POSITION = 6 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'INTEGER' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND * (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10) * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB38"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* PITCH SMALLINT MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'PITCH' AND ORDINAL_POSITION =
- " 7" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'SMALLINT'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND" DISPLAY" (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10)" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'PITCH' AND ORDINAL_POSITION = 7 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'SMALLINT' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND * (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10) * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB39"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* DEGREE NUMERIC (3, 2) MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'DEGREE' AND ORDINAL_POSITION
- " = 8" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'NUMERIC'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC = 3 AND NUM_SCALE = 2" DISPLAY" AND NUM_PREC_RADIX = 10" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'DEGREE' AND ORDINAL_POSITION = 8 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'NUMERIC' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC = 3 AND NUM_SCALE = 2 * AND NUM_PREC_RADIX = 10 * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB40"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* RUDDER DECIMAL (2) MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'RUDDER' AND ORDINAL_POSITION
- " = 9" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'DECIMAL'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC >= 2 AND NUM_SCALE = 0" DISPLAY" AND NUM_PREC_RADIX = 10" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'RUDDER' AND ORDINAL_POSITION = 9 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DECIMAL' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC >= 2 AND NUM_SCALE = 0 * AND NUM_PREC_RADIX = 10 * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB41"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* EXEC SQL COMMIT WORK; CALL"SUB47"USING SQLCODE SQLSTATE MOVE SQLCODE TO SQL-COD ******************** END TEST0679 ******************** ******************** BEGIN TEST0680 ******************* MOVE 1 TO flag
MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.TABLES" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND TABLE_TYPE = 'VIEW';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.TABLES * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND TABLE_TYPE = 'VIEW'; CALL"SUB54"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.VIEWS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.VIEWS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES'; CALL"SUB55"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* FLAAG CHAR DEFAULT 'Y' MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'FLAAG' AND ORDINAL_POSITION =
- " 1" DISPLAY" AND COLUMN_DEF = '''Y''' AND DATA_TYPE =
- " 'CHARACTER'" DISPLAY" AND CHAR_MAX_LENGTH = 1 AND CHAR_OCTET_LENGTH" DISPLAY" > 0 AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'FLAAG' AND ORDINAL_POSITION = 1 * AND COLUMN_DEF = '''Y''' AND DATA_TYPE = 'CHARACTER' * AND CHAR_MAX_LENGTH = 1 AND CHAR_OCTET_LENGTH * > 0 AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB56"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* KODE CHAR (5) NOT NULL MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'KODE' AND ORDINAL_POSITION =
- " 2" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'CHARACTER'" DISPLAY" AND CHAR_MAX_LENGTH = 5 AND CHAR_OCTET_LENGTH" DISPLAY" > 0 AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'NO';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'KODE' AND ORDINAL_POSITION = 2 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'CHARACTER' * AND CHAR_MAX_LENGTH = 5 AND CHAR_OCTET_LENGTH * > 0 AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'NO'; CALL"SUB57"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* AMPL REAL DEFAULT 3 MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'AMPL' AND ORDINAL_POSITION =
- " 3" DISPLAY" AND COLUMN_DEF IS NOT NULL AND DATA_TYPE =
- " 'REAL'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX" DISPLAY" = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'AMPL' AND ORDINAL_POSITION = 3 * AND COLUMN_DEF IS NOT NULL AND DATA_TYPE = 'REAL' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX * = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB58"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* COORD DOUBLE PRECISION MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'COORD' AND ORDINAL_POSITION =
- " 4" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DOUBLE
- " PRECISION'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC > 8 AND NUM_PREC_RADIX" DISPLAY" = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'COORD' AND ORDINAL_POSITION = 4 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DOUBLE PRECISION' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC > 8 AND NUM_PREC_RADIX * = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB59"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* SWAY FLOAT MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'SWAY' AND ORDINAL_POSITION =
- " 5" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE = 'FLOAT'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX" DISPLAY" = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS" DISPLAY" NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC
- " IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'SWAY' AND ORDINAL_POSITION = 5 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'FLOAT' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC >= 8 AND NUM_PREC_RADIX * = 2 AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB60"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* REVS INTEGER MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'REVS' AND ORDINAL_POSITION =
- " 6" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'INTEGER'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND" DISPLAY" (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10)" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'REVS' AND ORDINAL_POSITION = 6 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'INTEGER' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND * (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10) * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB61"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* PITCH SMALLINT MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'PITCH' AND ORDINAL_POSITION =
- " 7" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'SMALLINT'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND" DISPLAY" (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10)" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'PITCH' AND ORDINAL_POSITION = 7 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'SMALLINT' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC > 0 AND NUM_SCALE = 0 AND * (NUM_PREC_RADIX = 2 OR NUM_PREC_RADIX = 10) * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB62"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* DEGREE NUMERIC (3, 2) MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'DEGREE' AND ORDINAL_POSITION
- " = 8" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'NUMERIC'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC = 3 AND NUM_SCALE = 2" DISPLAY" AND NUM_PREC_RADIX = 10" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'DEGREE' AND ORDINAL_POSITION = 8 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'NUMERIC' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC = 3 AND NUM_SCALE = 2 * AND NUM_PREC_RADIX = 10 * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB63"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* RUDDER DECIMAL (2) MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_TYPES'" DISPLAY" AND COLUMN_NAME = 'RUDDER' AND ORDINAL_POSITION
- " = 9" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'DECIMAL'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC >= 2 AND NUM_SCALE = 0" DISPLAY" AND NUM_PREC_RADIX = 10" DISPLAY" AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS
- " NULL AND" DISPLAY" INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_TYPES' * AND COLUMN_NAME = 'RUDDER' AND ORDINAL_POSITION = 9 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DECIMAL' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC >= 2 AND NUM_SCALE = 0 * AND NUM_PREC_RADIX = 10 * AND DATETIME_PREC IS NULL AND INTERVAL_TYPE IS NULL AND * INTERVAL_PREC IS NULL AND IS_NULLABLE = 'YES'; CALL"SUB64"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* EXEC SQL COMMIT WORK; CALL"SUB72"USING SQLCODE SQLSTATE MOVE SQLCODE TO SQL-COD ******************** END TEST0680 ******************** ******************** BEGIN TEST0682 ******************* MOVE 1 TO flag
MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.TABLES" DISPLAY" WHERE TABLE_SCHEM = 'FLATER'" DISPLAY" AND TABLE_NAME = 'LOTSA_DATETIMES'" DISPLAY" AND TABLE_TYPE = 'BASE TABLE';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.TABLES * WHERE TABLE_SCHEM = 'FLATER' * AND TABLE_NAME = 'LOTSA_DATETIMES' * AND TABLE_TYPE = 'BASE TABLE'; CALL"SUB75"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
*The Standard specifies that DATETIME_PREC is not null *for the DATE type. It does not explain what significance *it could possibly have.
* C1 DATE MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_DATETIMES'" DISPLAY" AND COLUMN_NAME = 'C1' AND ORDINAL_POSITION = 1" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DATE'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " IS" DISPLAY" NOT NULL AND INTERVAL_TYPE IS NULL AND
- " INTERVAL_PREC IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_DATETIMES' * AND COLUMN_NAME = 'C1' AND ORDINAL_POSITION = 1 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'DATE' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC IS * NOT NULL AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB76"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
*Precisions are specified by 6.1 SR.25
* C2 TIME MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_DATETIMES'" DISPLAY" AND COLUMN_NAME = 'C2' AND ORDINAL_POSITION = 2" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE = 'TIME'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " = 0" DISPLAY" AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_DATETIMES' * AND COLUMN_NAME = 'C2' AND ORDINAL_POSITION = 2 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'TIME' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC = 0 * AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB77"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* C3 TIMESTAMP MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_DATETIMES'" DISPLAY" AND COLUMN_NAME = 'C3' AND ORDINAL_POSITION = 3" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'TIMESTAMP'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " = 6" DISPLAY" AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS" DISPLAY" NULL AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_DATETIMES' * AND COLUMN_NAME = 'C3' AND ORDINAL_POSITION = 3 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'TIMESTAMP' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC = 6 * AND INTERVAL_TYPE IS NULL AND INTERVAL_PREC IS * NULL AND IS_NULLABLE = 'YES'; CALL"SUB78"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
*Interval leading field precision: 10.1 SR.5
* C4 INTERVAL YEAR MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_DATETIMES'" DISPLAY" AND COLUMN_NAME = 'C4' AND ORDINAL_POSITION = 4" DISPLAY" AND COLUMN_DEF IS NULL AND DATA_TYPE =
- " 'INTERVAL'" DISPLAY" AND CHAR_MAX_LENGTH IS NULL AND
- " CHAR_OCTET_LENGTH" DISPLAY" IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX" DISPLAY" IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC
- " IS NOT NULL" DISPLAY" AND INTERVAL_TYPE = 'YEAR' AND INTERVAL_PREC =
- " 2" DISPLAY" AND IS_NULLABLE = 'YES';" * EXEC SQL SELECT COUNT(*) INTO :int1 FROM INFO_SCHEM.COLUMNS * WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME = * 'LOTSA_DATETIMES' * AND COLUMN_NAME = 'C4' AND ORDINAL_POSITION = 4 * AND COLUMN_DEF IS NULL AND DATA_TYPE = 'INTERVAL' * AND CHAR_MAX_LENGTH IS NULL AND CHAR_OCTET_LENGTH * IS NULL AND NUM_PREC IS NULL AND NUM_PREC_RADIX * IS NULL AND NUM_SCALE IS NULL AND DATETIME_PREC IS NOT * NULL * AND INTERVAL_TYPE = 'YEAR' AND INTERVAL_PREC = 2 * AND IS_NULLABLE = 'YES'; CALL"SUB79"USING SQLCODE SQLSTATE int1 MOVE SQLCODE TO SQL-COD PERFORM CHCKOK DISPLAY"int1 should be 1; its value is ", int1 if (int1 NOT = 1) then MOVE 0 TO flag END-IF
* C5 INTERVAL MONTH MOVE 0 TO int1 DISPLAY"SELECT COUNT(*) INTO :int1 FROM
- " INFO_SCHEM.COLUMNS" DISPLAY" WHERE TABLE_SCHEM = 'FLATER' AND TABLE_NAME =
- " 'LOTSA_DATETIMES'"
--> --------------------
--> maximum size reached
--> --------------------
¤ 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.44Bemerkung:
(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.