1 /* Copyright (c) 2001-2016, The HSQL Development Group 2 * All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are met: 6 * 7 * Redistributions of source code must retain the above copyright notice, this 8 * list of conditions and the following disclaimer. 9 * 10 * Redistributions in binary form must reproduce the above copyright notice, 11 * this list of conditions and the following disclaimer in the documentation 12 * and/or other materials provided with the distribution. 13 * 14 * Neither the name of the HSQL Development Group nor the names of its main()15 * contributors may be used to endorse or promote products derived from this 16 * software without specific prior written permission. 17 * 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21 * ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG, 22 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 23 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 24 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 28 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 */ 30 31 32 package org.hsqldb; 33 34 /* 35 * Codes based on SQL Standards for different types of statement. 36 * 37 * @author Fred Toussi (fredt@users dot sourceforge.net) 38 * @version 2.3.4 39 * @since 1.9.0 40 */ 41 public interface StatementTypes { 42 43 int ALLOCATE_CURSOR = 1; 44 int ALLOCATE_DESCRIPTOR = 2; 45 int ALTER_DOMAIN = 3; 46 int ALTER_ROUTINE = 4; 47 int ALTER_SEQUENCE = 5; 48 int ALTER_TYPE = 6; 49 int ALTER_TABLE = 7; 50 int ALTER_TRANSFORM = 8; 51 int CREATE_ASSERTION = 9; 52 int CALL = 10; 53 int CREATE_CHARACTER_SET = 11; 54 int CLOSE_CURSOR = 12; 55 int CREATE_COLLATION = 13; 56 int COMMIT_WORK = 14; 57 int CONNECT = 15; 58 int DEALLOCATE_DESCRIPTOR = 16; 59 int DEALLOCATE_PREPARE = 17; 60 int DELETE_CURSOR = 18; 61 int DELETE_WHERE = 19; 62 int DESCRIBE = 20; 63 int SELECT_DIRECT_SINGLE = 21; // identifier is SELECT 64 int DISCONNECT = 22; 65 int CREATE_DOMAIN = 23; 66 int DROP_ASSERTION = 24; 67 int DROP_CHARACTER_SET = 25; 68 int DROP_COLLATION = 26; 69 int DROP_TYPE = 27; 70 int DROP_DOMAIN = 28; 71 int DROP_ROLE = 29; 72 int DROP_ROUTINE = 30; 73 int DROP_SCHEMA = 31; 74 int DROP_SEQUENCE = 32; 75 int DROP_TABLE = 33; 76 int DROP_TRANSFORM = 34; 77 int DROP_TRANSLATION = 35; 78 int DROP_TRIGGER = 36; 79 int DROP_CAST = 37; 80 int DROP_ORDERING = 38; 81 int DROP_VIEW = 39; 82 int DYNAMIC_CLOSE = 40; 83 int DYNAMIC_DELETE_CURSOR = 41; 84 int DYNAMIC_FETCH = 42; 85 int DYNAMIC_OPEN = 43; 86 int SELECT_CURSOR = 44; 87 int SELECT_SINGLE_DYNAMIC = 45; // identifier is SELECT 88 int DYNAMIC_UPDATE_CURSOR = 46; 89 int EXECUTE_IMMEDIATE = 47; 90 int EXECUTE = 48; 91 int FETCH = 49; 92 int FREE_LOCATOR = 50; 93 int GET_DESCRIPTOR = 51; 94 int HOLD_LOCATOR = 52; 95 int GRANT = 53; 96 int GRANT_ROLE = 54; 97 int INSERT = 55; 98 int MERGE = 56; 99 int OPEN = 57; 100 int PREPARABLE_DYNAMIC_DELETE_CURSOR = 58; 101 int PREPARABLE_DYNAMIC_UPDATE_CURSOR = 59; 102 int PREPARE = 60; 103 int RELEASE_SAVEPOINT = 61; 104 int RETURN = 62; 105 int REVOKE = 63; 106 int REVOKE_ROLE = 64; 107 int CREATE_ROLE = 65; 108 int ROLLBACK_WORK = 66; 109 int SAVEPOINT = 67; 110 int CREATE_SCHEMA = 68; 111 int CREATE_ROUTINE = 69; 112 int SELECT_SINGLE = 70; // identifier is SELECT 113 int CREATE_SEQUENCE = 71; 114 int SET_CATALOG = 72; 115 int SET_CONNECTION = 73; 116 int SET_CONSTRAINT = 74; 117 int SET_DESCRIPTOR = 75; 118 int SET_TIME_ZONE = 76; 119 int SET_NAMES = 77; 120 int SET_PATH = 78; 121 int SET_ROLE = 79; 122 int SET_SCHEMA = 80; 123 int SET_SESSION_AUTHORIZATION = 81; 124 int SET_SESSION_CHARACTERISTICS = 82; 125 int SET_COLLATION = 83; 126 int SET_TRANSFORM_GROUP = 84; 127 int SET_TRANSACTION = 85; 128 int START_TRANSACTION = 86; 129 int CREATE_TABLE = 87; 130 int CREATE_TRANSFORM = 88; 131 int CREATE_TRANSLATION = 89; 132 int CREATE_TRIGGER = 90; 133 int UPDATE_CURSOR = 91; 134 int UPDATE_WHERE = 92; 135 int CREATE_CAST = 93; 136 int CREATE_TYPE = 94; 137 int CREATE_ORDERING = 95; 138 int CREATE_VIEW = 96; 139 int ASSIGNMENT = 97; // PSM 140 int CASE = 98; 141 int BEGIN_END = 99; 142 int DROP_MODULE = 100; 143 int FOR = 101; 144 int IF = 102; 145 int ITERATE = 103; 146 int LEAVE = 104; 147 int LOOP = 105; 148 int RESIGNAL = 106; 149 int REPEAT = 107; 150 int SIGNAL = 108; 151 int CREATE_MODULE = 109; 152 int WHILE = 110; 153 int NULL = 111; 154 155 // 156 int ALTER_FOREIGN_TABLE = 121; 157 int ALTER_USER_MAPPING = 122; 158 int DROP_FOREIGN_DATA_WRAPPER = 123; 159 int DROP_SERVER = 124; 160 int DROP_FOREIGN_TABLE = 125; 161 int DROP_ROUTINE_MAPPING = 126; 162 int DROP_USER_MAPPING = 127; 163 int CREATE_FOREIGN_DATA_WRAPPER = 128; 164 int CREATE_SERVER = 129; 165 int CREATE_FOREIGN_TABLE = 130; 166 int IMPORT_FOREIGN_SCHEMA = 131; 167 int CREATE_ROUTINE_MAPPING = 132; 168 int SET_PASSTHROUGH = 133; 169 int CREATE_USER_MAPPING = 134; 170 171 // hsqldb database 172 int DATABASE_BACKUP = 1001; 173 int DATABASE_CHECKPOINT = 1002; 174 int DATABASE_SHUTDOWN = 1003; 175 int DATABASE_SCRIPT = 1004; 176 int ALTER_SESSION = 1005; 177 int CHECK_INDEX = 1006; 178 179 // hsqldb database settings 180 int SET_DATABASE_FILES_BACKUP_INCREMENT = 1011; 181 int SET_DATABASE_FILES_CACHE_ROWS = 1012; 182 int SET_DATABASE_FILES_CACHE_SIZE = 1013; 183 int SET_DATABASE_FILES_CHECK = 1014; 184 int SET_DATABASE_FILES_DEFRAG = 1015; 185 int SET_DATABASE_FILES_EVENT_LOG = 1016; 186 int SET_DATABASE_FILES_LOBS_SCALE = 1017; 187 int SET_DATABASE_FILES_LOBS_COMPRESSED = 1018; 188 int SET_DATABASE_FILES_UNUSED_TYPE_SETTING = 1019; 189 int SET_DATABASE_FILES_LOG = 1020; 190 int SET_DATABASE_FILES_LOG_SIZE = 1021; 191 int SET_DATABASE_FILES_NIO = 1022; 192 int SET_DATABASE_FILES_READ_ONLY = 1023; 193 int SET_DATABASE_FILES_READ_ONLY_FILES = 1024; 194 int SET_DATABASE_FILES_SCALE = 1025; 195 int SET_DATABASE_FILES_SCRIPT_FORMAT = 1026; 196 int SET_DATABASE_FILES_SPACE = 1031; 197 int SET_DATABASE_FILES_TEMP_PATH = 1032; 198 int SET_DATABASE_FILES_WRITE_DELAY = 1033; 199 int SET_DATABASE_DEFAULT_INITIAL_SCHEMA = 1034; 200 int SET_DATABASE_DEFAULT_TABLE_TYPE = 1035; 201 int SET_DATABASE_AUTHENTICATION = 1036; 202 int SET_DATABASE_GC = 1037; 203 int SET_DATABASE_PROPERTY = 1039; 204 int SET_DATABASE_PASSWORD_CHECK = 1040; 205 int SET_DATABASE_READ_ONLY = 1041; 206 int SET_DATABASE_READ_ONLY_FILES = 1042; 207 int SET_DATABASE_RESULT_MEMORY_ROWS = 1046; 208 int SET_DATABASE_SQL_COLLATION = 1047; 209 int SET_SESSION_SQL_IGNORECASE = 1048; 210 int SET_DATABASE_SQL_REFERENTIAL_INTEGRITY = 1049; 211 int SET_DATABASE_SQL = 1050; 212 int SET_DATABASE_TEXT_SOURCE = 1051; 213 int SET_DATABASE_TRANSACTION_CONTROL = 1052; 214 int SET_DATABASE_DEFAULT_ISOLATION_LEVEL = 1053; 215 int SET_DATABASE_TRANSACTION_CONFLICT = 1054; 216 int SET_DATABASE_UNIQUE_NAME = 1055; 217 int SET_DATABASE_PASSWORD_DIGEST = 1056; 218 219 // hsqldb user settings 220 int SET_USER_LOCAL = 1091; 221 int SET_USER_INITIAL_SCHEMA = 1092; 222 int SET_USER_PASSWORD = 1093; 223 224 // hsqldb session 225 int TRANSACTION_LOCK_CATALOG = 1111; 226 int TRANSACTION_UNLOCK_CATALOG = 1112; 227 int TRANSACTION_LOCK_TABLE = 1113; 228 int SET_SESSION_AUTOCOMMIT = 1114; 229 int SET_SESSION_FEATURE = 1115; 230 int SET_SESSION_RESULT_MAX_ROWS = 1116; 231 int SET_SESSION_RESULT_MEMORY_ROWS = 1117; 232 int ROLLBACK_SAVEPOINT = 1118; 233 int DECLARE_SESSION_TABLE = 1119; 234 235 // hsqldb schema 236 int ALTER_INDEX = 1121; 237 int ALTER_VIEW = 1122; 238 int COMMENT = 1123; 239 int CREATE_ALIAS = 1124; 240 int CREATE_INDEX = 1125; 241 int CREATE_USER = 1126; 242 int DECLARE_VARIABLE = 1127; 243 int DROP_COLUMN = 1128; 244 int DROP_INDEX = 1129; 245 int DROP_CONSTRAINT = 1130; 246 int DROP_USER = 1131; 247 int DROP_DEFAULT = 1132; 248 int ADD_COLUMN = 1133; 249 int ADD_CONSTRAINT = 1134; 250 int ADD_DEFAULT = 1135; 251 int ALTER_COLUMN_TYPE = 1136; 252 int ALTER_COLUMN_SEQUENCE = 1137; 253 int ALTER_COLUMN_NULL = 1139; 254 int ALTER_COLUMN_DEFAULT = 1140; 255 int ALTER_COLUMN_DROP_DEFAULT = 1141; 256 int ALTER_COLUMN_DROP_EXPRESSION = 1142; 257 int ALTER_COLUMN_DROP_GENERATED = 1143; 258 int ALTER_COLUMN_TYPE_IDENTITY = 1144; 259 260 // 261 int CREATE_REFERENCE = 1146; 262 int DROP_REFERENCE = 1147; 263 264 // 265 int EXPLAIN_PLAN = 1151; 266 int RENAME_OBJECT = 1152; 267 int SET_TABLE_INDEX = 1153; 268 int SET_TABLE_READONLY = 1154; 269 int SET_TABLE_SOURCE = 1155; 270 int SET_TABLE_SOURCE_HEADER = 1156; 271 int SET_TABLE_TYPE = 1157; 272 int SET_TABLE_CLUSTERED = 1158; 273 int SET_TABLE_NEW_TABLESPACE = 1159; 274 int SET_TABLE_SET_TABLESPACE = 1160; 275 int LOG_SCHEMA_STATEMENT = 1161; 276 277 // hsqldb sql implementation 278 int CONDITION = 1211; // element of IF 279 int HANDLER = 1212; 280 int DDL = 1213; 281 int CHECK = 1214; 282 int TRUNCATE = 1215; 283 284 // 285 int CREATE_SEARCH = 1301; 286 int DROP_SEARCH = 1302; 287 288 // 289 // hsqldb groups 290 int X_SQL_SCHEMA_DEFINITION = 2001; 291 int X_SQL_SCHEMA_MANIPULATION = 2002; 292 int X_SQL_DATA = 2003; 293 int X_SQL_DATA_CHANGE = 2004; 294 int X_SQL_TRANSACTION = 2005; 295 int X_SQL_CONNECTION = 2006; 296 int X_SQL_CONTROL = 2007; 297 int X_SQL_SESSION = 2008; 298 int X_SQL_DIAGNOSTICS = 2009; 299 int X_SQL_DYNAMIC = 2010; 300 int X_HSQLDB_SESSION = 2011; 301 int X_HSQLDB_SCHEMA_MANIPULATION = 2012; 302 int X_HSQLDB_SETTING = 2013; 303 int X_HSQLDB_DATABASE_OPERATION = 2014; 304 int X_HSQLDB_NONBLOCK_OPERATION = 2015; 305 int X_HSQLDB_TRANSACTION = 2016; 306 int X_DYNAMIC = 2017; 307 308 // Expected types of Result returned for an SQL statement 309 int RETURN_ANY = 0; 310 int RETURN_COUNT = 1; 311 int RETURN_RESULT = 2; 312 } 313