1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307
|
ij> --
-- Licensed to the Apache Software Foundation (ASF) under one or more
-- contributor license agreements. See the NOTICE file distributed with
-- this work for additional information regarding copyright ownership.
-- The ASF licenses this file to You under the Apache License, Version 2.0
-- (the "License"); you may not use this file except in compliance with
-- the License. You may obtain a copy of the License at
--
-- http://www.apache.org/licenses/LICENSE-2.0
--
-- Unless required by applicable law or agreed to in writing, software
-- distributed under the License is distributed on an "AS IS" BASIS,
-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-- See the License for the specific language governing permissions and
-- limitations under the License.
--
AUTOCOMMIT OFF;
ij> -- MODULE DML160
-- SQL Test Suite, V6.0, Interactive SQL, dml160.sql
-- 59-byte ID
-- TEd Version #
-- AUTHORIZATION FLATER
set schema FLATER;
0 rows inserted/updated/deleted
ij> --O SELECT USER FROM HU.ECCO;
VALUES USER;
1
--------------------------------------------------------------------------------------------------------------------------------
FLATER
ij> -- RERUN if USER value does not match preceding AUTHORIZATION comment
ROLLBACK WORK;
ij> -- date_time print
-- TEST:0859 <joined table> contained in <select list>!
SELECT EMPNUM, (SELECT COUNT(*) FROM HU.WORKS JOIN HU.PROJ
ON HU.WORKS.PNUM = HU.PROJ.PNUM
AND BUDGET > AVG (OSTAFF.GRADE) * 1000
WHERE HU.WORKS.EMPNUM = OSTAFF.EMPNUM) FROM HU.STAFF AS OSTAFF
ORDER BY 2, 1;
ERROR 42972: An ON clause associated with a JOIN operator is not valid.
ij> -- PASS:0859 If 5 rows are returned in the following order?
-- empnum count
-- ====== =====
-- PASS:0859 If E5 0 ?
-- PASS:0859 If E2 1 ?
-- PASS:0859 If E3 1 ?
-- PASS:0859 If E4 2 ?
-- PASS:0859 If E1 4 ?
COMMIT WORK;
ij> -- END TEST >>> 0859 <<< END TEST
-- *********************************************
-- TEST:0860 Domains over various data types!
--O CREATE DOMAIN EPOCH_NOT_NORM AS DECIMAL (5, 2);
--O-- PASS:0860 If domain created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE DOMAIN RAD_EPOCH_TYPE FLOAT (20)
--O CHECK (VALUE BETWEEN 0E0 AND 2E0 * 3.1416E0);
--O-- PASS:0860 If domain created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE DOMAIN RAD_EPOCH_NOT_NORM REAL;
--O-- PASS:0860 If domain created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE DOMAIN TIDEDATE AS DATE
--O CHECK (VALUE BETWEEN DATE( '1994-01-01') AND DATE( '2025-12-31'));
--O-- PASS:0860 If domain created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE DOMAIN TIDETIMESTAMP AS TIMESTAMP WITH TIME ZONE
--O CHECK (VALUE BETWEEN TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00')
--O AND TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'));
--O-- PASS:0860 If domain created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE DOMAIN DINNERTIME AS TIME
--O CHECK (VALUE BETWEEN TIME( '17:30:00') AND TIME( '19:00:00'));
--O-- PASS:0860 If domain created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE TABLE CONST_NOT_NORM (
--O LOC_ID DEC (7) NOT NULL,
--O CONST_ID TIDES.CONST_ID_TYPE NOT NULL,
--O UNIQUE (LOC_ID, CONST_ID),
--O AMPLITUDE TIDES.AMPLITUDE_TYPE,
--O EPOCH EPOCH_NOT_NORM);
--O-- PASS:0860 If table created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE VIEW CONST_RAD (LOC_ID, CONST_ID,
--O AMPLITUDE, EPOCH) AS
--O SELECT LOC_ID, CONST_ID, AMPLITUDE,
--O CAST (EPOCH * 3.14159265358979E0 / 180E0 AS RAD_EPOCH_TYPE)
--O FROM TIDES.CONSTITUENTS;
--O-- PASS:0860 If view created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE VIEW CONST_RAD_NOT_NORM (LOC_ID, CONST_ID,
--O AMPLITUDE, EPOCH) AS
--O SELECT LOC_ID, CONST_ID, AMPLITUDE,
--O CAST (EPOCH * 3.14159265358979E0 / 180E0 AS RAD_EPOCH_NOT_NORM)
--O FROM CONST_NOT_NORM;
--O-- PASS:0860 If view created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE TABLE PENDING (
--O LOC_ID DEC (7) NOT NULL,
--O FROMTIME TIDETIMESTAMP NOT NULL,
--O TOTIME TIDETIMESTAMP NOT NULL,
--O CHECK (FROMTIME <= TOTIME),
--O JOB_ID INT PRIMARY KEY);
--O-- PASS:0860 If table created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE VIEW CHECK_PTS (CHECK_DATES, JOB_ID, FLAG) AS
--O SELECT CAST (FROMTIME AS TIDEDATE), JOB_ID,
--O CAST (0 AS INT) FROM PENDING
--O UNION
--O SELECT CAST (TOTIME AS TIDEDATE), JOB_ID,
--O CAST (1 AS INT) FROM PENDING;
--O-- PASS:0860 If view created successfully?
--O
--O COMMIT WORK;
--O
--O CREATE TABLE DINNER_CLUB (
--O LOC_ID DEC (7) NOT NULL,
--O DINNER DINNERTIME);
--O-- PASS:0860 If table created successfully?
--O
--O COMMIT WORK;
--O
--O SELECT HOUR( MERIDIAN), EXTRACT
--O (MINUTE FROM MERIDIAN)
--O FROM TIDES.LOCATIONS WHERE LOC_NAME LIKE '%Newfound%';
--O-- PASS:0860 If xhour = -3?
--O-- PASS:0860 If xminute = -30?
--O
--O INSERT INTO TIDES.LOCATIONS VALUES (
--O 300, 'Atlantis', 160.0000, 3.0000, 0, 1.2E0,
--O INTERVAL -'13:00' HOUR TO MINUTE, 'GMT-13');
--O-- PASS:0860 If ERROR - integrity constraint violation?
--O
--O UPDATE TIDES.CONSTITUENTS
--O SET AMPLITUDE = - AMPLITUDE
--O WHERE LOC_ID = 100
--O AND CONST_ID = 0;
--O-- PASS:0860 If ERROR - integrity constraint violation?
--O
--O INSERT INTO TIDES.LOCATIONS VALUES (300,
--O 'Bath, Maine', -69.8133, 43.9183,
--O 1, 3.422E0, INTERVAL '-05:00' HOUR TO MINUTE, ':US/Eastern');
--O-- PASS:0860 If 1 row inserted successfully?
--O
--O INSERT INTO TIDES.CONSTITUENTS VALUES (300, 2, 0.134E0, 385.0);
--O-- PASS:0860 If ERROR - integrity constraint violation?
--O
--O INSERT INTO CONST_NOT_NORM VALUES (300, 0, 0.021E0, 151.6);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 1, 0.324E0, 144.5);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 2, 0.134E0, 385.0);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 3, 0.181E0, 40.9);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 4, 0.037E0, 150.0);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 5, 3.143E0, 352.3);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 6, 0.000E0, 50.0);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 7, 0.104E0, 242.8);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 8, 0.031E0, 158.6);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 9, 0.000E0, 133.3);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 10, 0.744E0, 322.0);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 11, 0.087E0, 307.4);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 12, 0.260E0, 130.4);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 13, 0.011E0, 158.7);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 14, 0.107E0, 140.8);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 15, 0.043E0, 114.3);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 16, 0.007E0, 116.4);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 17, 0.004E0, 383.2);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 18, 0.000E0, 17.3);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 19, 0.488E0, 383.4);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 20, 0.000E0, 69.0);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 21, 0.000E0, 103.5);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 22, 0.053E0, 365.8);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 23, 0.053E0, 37.3);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 24, 0.023E0, 297.8);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 25, 0.138E0, 328.3);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 26, 0.010E0, 124.4);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 27, 0.000E0, 50.6);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 28, 0.000E0, 49.4);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 29, 0.000E0, 66.0);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 30, 0.000E0, 67.8);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 31, 0.000E0, 35.7);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 32, 0.073E0, 285.0);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 33, 0.033E0, 257.3);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 34, 0.000E0, 0.6);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 35, 0.056E0, 128.8);
--O INSERT INTO CONST_NOT_NORM VALUES (300, 36, 0.038E0, 97.7);
--O-- PASS:0860 If 37 rows inserted from previous 37 inserts?
--O
--O SELECT EPOCH FROM CONST_RAD
--O WHERE LOC_ID = 100
--O AND CONST_ID = 0;
--O-- PASS:0860 If EPOCH = 2.11 (+ or - 0.01)?
--O
--O SELECT COUNT(*)
--O FROM CONST_RAD_NOT_NORM
--O WHERE EPOCH > 6.2831853E0;
--O-- PASS:0860 If COUNT = 4?
--O
--O INSERT INTO PENDING VALUES (
--O 300, TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'),
--O TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'), 0);
--O-- PASS:0860 If 1 row inserted successfully?
--O
--O INSERT INTO PENDING VALUES (
--O 101, TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'),
--O TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'), 1);
--O-- PASS:0860 If ERROR - integrity constraint violation?
--O
--O INSERT INTO PENDING VALUES (
--O 101, TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'),
--O TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'), 1);
--O-- PASS:0860 If 1 row inserted successfully?
--O
--O INSERT INTO PENDING VALUES (
--O 102, TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'),
--O TIMESTAMP( 'xxxxxxFILTERED-TIMESTAMPxxxxx:00'), 2);
--O-- PASS:0860 If 1 row inserted successfully?
--O
--O SELECT YEAR( CHECK_DATES)
--O FROM CHECK_PTS WHERE JOB_ID = 2 AND FLAG = 0;
--O-- PASS:0860 If ERROR - integrity constraint violation?
--O
--O SELECT YEAR( CHECK_DATES)
--O FROM CHECK_PTS WHERE JOB_ID = 2 AND FLAG = 1;
--O-- PASS:0860 If xyear = 1994?
--O
--O INSERT INTO DINNER_CLUB VALUES
--O (0, TIME( '17:30:00'));
--O-- PASS:0860 If 1 row inserted successfully?
--O
--O INSERT INTO DINNER_CLUB VALUES
--O (1, CAST (TIME( '18:00:00') AS DINNERTIME));
--O-- PASS:0860 If 1 row inserted successfully?
--O
--O INSERT INTO DINNER_CLUB VALUES
--O (2, TIME( '19:30:00'));
--O-- PASS:0860 If ERROR - integrity constraint violation?
--O
--O COMMIT WORK;
--O
--O DROP DOMAIN EPOCH_NOT_NORM CASCADE;
--O COMMIT WORK;
--O DROP DOMAIN RAD_EPOCH_TYPE CASCADE;
--O COMMIT WORK;
--O DROP DOMAIN RAD_EPOCH_NOT_NORM CASCADE;
--O COMMIT WORK;
--O DROP DOMAIN TIDEDATE CASCADE;
--O COMMIT WORK;
--O DROP DOMAIN TIDETIMESTAMP CASCADE;
--O COMMIT WORK;
--O DROP DOMAIN DINNERTIME CASCADE;
--O COMMIT WORK;
--O-- PASS:0860 If domains dropped successfully in 6 previous drops?
--O
--O DROP TABLE CONST_NOT_NORM CASCADE;
--O COMMIT WORK;
--O DROP VIEW CONST_RAD CASCADE;
--O COMMIT WORK;
--O DROP TABLE PENDING CASCADE;
--O COMMIT WORK;
--O DROP TABLE DINNER_CLUB CASCADE;
--O COMMIT WORK;
--O-- PASS:0860 If tables and view dropped in 4 previous drops?
--O
--O DELETE FROM TIDES.LOCATIONS
--O WHERE LOC_ID = 300;
--O-- PASS:0860 If delete completed successfully?
--O
--O COMMIT WORK;
--O
--O-- END TEST >>> 0860 <<< END TEST
--O-- *********************************************
--O-- *************************************************////END-OF-MODULE
-- Simple addition to check the test has a security manager installed.
run resource '/org/apache/derbyTesting/functionTests/util/testRoutines.sql';
ij> -- Changed to create individual procedures so that this will work with JSR169.
-- Direct call to 'installRoutines' uses nested connection
CREATE PROCEDURE TESTROUTINE.SET_SYSTEM_PROPERTY(IN PROPERTY_KEY VARCHAR(32000), IN PROPERTY_VALUE VARCHAR(32000)) NO SQL EXTERNAL NAME 'org.apache.derbyTesting.functionTests.util.TestRoutines.setSystemProperty' language java parameter style java;
0 rows inserted/updated/deleted
ij> CREATE PROCEDURE TESTROUTINE.SLEEP(IN SLEEP_TIME_MS BIGINT) NO SQL EXTERNAL NAME 'org.apache.derbyTesting.functionTests.util.TestRoutines.sleep' language java parameter style java;
0 rows inserted/updated/deleted
ij> CREATE FUNCTION TESTROUTINE.HAS_SECURITY_MANAGER() RETURNS INT NO SQL EXTERNAL NAME 'org.apache.derbyTesting.functionTests.util.TestRoutines.hasSecurityManager' language java parameter style java;
0 rows inserted/updated/deleted
ij> CREATE FUNCTION TESTROUTINE.READ_FILE(FILE_NAME VARCHAR(60), ENCODING VARCHAR(60)) RETURNS VARCHAR(32000) NO SQL EXTERNAL NAME 'org.apache.derbyTesting.functionTests.util.TestRoutines.readFile' language java parameter style java;
0 rows inserted/updated/deleted
ij> values TESTROUTINE.HAS_SECURITY_MANAGER();
1
-----------
0
ij>
|