1 /* Copyright (c) 2016, 2021, Oracle and/or its affiliates. 2 3 This program is free software; you can redistribute it and/or modify 4 it under the terms of the GNU General Public License, version 2.0, 5 as published by the Free Software Foundation. 6 7 This program is also distributed with certain software (including 8 but not limited to OpenSSL) that is licensed under separate terms, 9 as designated in a particular file or component or in included license 10 documentation. The authors of MySQL hereby grant you an additional 11 permission to link the program and your derivative works with the 12 separately licensed software that they have included with MySQL. 13 14 This program is distributed in the hope that it will be useful, 15 but WITHOUT ANY WARRANTY; without even the implied warranty of 16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 GNU General Public License, version 2.0, for more details. 18 19 You should have received a copy of the GNU General Public License 20 along with this program; if not, write to the Free Software 21 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ 22 23 #ifndef _mysql_sql_command_h 24 #define _mysql_sql_command_h 25 26 /* 27 @enum enum_sql_command 28 @brief SQL Commands 29 30 SQL Command is resolved during SQL parsing and assigned to the Lex 31 object, accessible from the THD. 32 33 When a command is added here, be sure it's also added in mysqld.cc 34 in "struct show_var_st status_vars[]= {" ... 35 36 If the command returns a result set or is not allowed in stored 37 functions or triggers, please also make sure that 38 sp_get_flags_for_command (sp_head.cc) returns proper flags for the 39 added SQLCOM_. 40 */ 41 enum enum_sql_command { 42 SQLCOM_SELECT, 43 SQLCOM_CREATE_TABLE, 44 SQLCOM_CREATE_INDEX, 45 SQLCOM_ALTER_TABLE, 46 SQLCOM_UPDATE, 47 SQLCOM_INSERT, 48 SQLCOM_INSERT_SELECT, 49 SQLCOM_DELETE, 50 SQLCOM_TRUNCATE, 51 SQLCOM_DROP_TABLE, 52 SQLCOM_DROP_INDEX, 53 SQLCOM_SHOW_DATABASES, 54 SQLCOM_SHOW_TABLES, 55 SQLCOM_SHOW_FIELDS, 56 SQLCOM_SHOW_KEYS, 57 SQLCOM_SHOW_VARIABLES, 58 SQLCOM_SHOW_STATUS, 59 SQLCOM_SHOW_ENGINE_LOGS, 60 SQLCOM_SHOW_ENGINE_STATUS, 61 SQLCOM_SHOW_ENGINE_MUTEX, 62 SQLCOM_SHOW_PROCESSLIST, 63 SQLCOM_SHOW_MASTER_STAT, 64 SQLCOM_SHOW_SLAVE_STAT, 65 SQLCOM_SHOW_GRANTS, 66 SQLCOM_SHOW_CREATE, 67 SQLCOM_SHOW_CHARSETS, 68 SQLCOM_SHOW_COLLATIONS, 69 SQLCOM_SHOW_CREATE_DB, 70 SQLCOM_SHOW_TABLE_STATUS, 71 SQLCOM_SHOW_TRIGGERS, 72 SQLCOM_LOAD, 73 SQLCOM_SET_OPTION, 74 SQLCOM_LOCK_TABLES, 75 SQLCOM_UNLOCK_TABLES, 76 SQLCOM_GRANT, 77 SQLCOM_CHANGE_DB, 78 SQLCOM_CREATE_DB, 79 SQLCOM_DROP_DB, 80 SQLCOM_ALTER_DB, 81 SQLCOM_REPAIR, 82 SQLCOM_REPLACE, 83 SQLCOM_REPLACE_SELECT, 84 SQLCOM_CREATE_FUNCTION, 85 SQLCOM_DROP_FUNCTION, 86 SQLCOM_REVOKE, 87 SQLCOM_OPTIMIZE, 88 SQLCOM_CHECK, 89 SQLCOM_ASSIGN_TO_KEYCACHE, 90 SQLCOM_PRELOAD_KEYS, 91 SQLCOM_FLUSH, 92 SQLCOM_KILL, 93 SQLCOM_ANALYZE, 94 SQLCOM_ROLLBACK, 95 SQLCOM_ROLLBACK_TO_SAVEPOINT, 96 SQLCOM_COMMIT, 97 SQLCOM_SAVEPOINT, 98 SQLCOM_RELEASE_SAVEPOINT, 99 SQLCOM_SLAVE_START, 100 SQLCOM_SLAVE_STOP, 101 SQLCOM_START_GROUP_REPLICATION, 102 SQLCOM_STOP_GROUP_REPLICATION, 103 SQLCOM_BEGIN, 104 SQLCOM_CHANGE_MASTER, 105 SQLCOM_CHANGE_REPLICATION_FILTER, 106 SQLCOM_RENAME_TABLE, 107 SQLCOM_RESET, 108 SQLCOM_PURGE, 109 SQLCOM_PURGE_BEFORE, 110 SQLCOM_SHOW_BINLOGS, 111 SQLCOM_SHOW_OPEN_TABLES, 112 SQLCOM_HA_OPEN, 113 SQLCOM_HA_CLOSE, 114 SQLCOM_HA_READ, 115 SQLCOM_SHOW_SLAVE_HOSTS, 116 SQLCOM_DELETE_MULTI, 117 SQLCOM_UPDATE_MULTI, 118 SQLCOM_SHOW_BINLOG_EVENTS, 119 SQLCOM_DO, 120 SQLCOM_SHOW_WARNS, 121 SQLCOM_EMPTY_QUERY, 122 SQLCOM_SHOW_ERRORS, 123 SQLCOM_SHOW_STORAGE_ENGINES, 124 SQLCOM_SHOW_PRIVILEGES, 125 SQLCOM_HELP, 126 SQLCOM_CREATE_USER, 127 SQLCOM_DROP_USER, 128 SQLCOM_RENAME_USER, 129 SQLCOM_REVOKE_ALL, 130 SQLCOM_CHECKSUM, 131 SQLCOM_CREATE_PROCEDURE, 132 SQLCOM_CREATE_SPFUNCTION, 133 SQLCOM_CALL, 134 SQLCOM_DROP_PROCEDURE, 135 SQLCOM_ALTER_PROCEDURE, 136 SQLCOM_ALTER_FUNCTION, 137 SQLCOM_SHOW_CREATE_PROC, 138 SQLCOM_SHOW_CREATE_FUNC, 139 SQLCOM_SHOW_STATUS_PROC, 140 SQLCOM_SHOW_STATUS_FUNC, 141 SQLCOM_PREPARE, 142 SQLCOM_EXECUTE, 143 SQLCOM_DEALLOCATE_PREPARE, 144 SQLCOM_CREATE_VIEW, 145 SQLCOM_DROP_VIEW, 146 SQLCOM_CREATE_TRIGGER, 147 SQLCOM_DROP_TRIGGER, 148 SQLCOM_XA_START, 149 SQLCOM_XA_END, 150 SQLCOM_XA_PREPARE, 151 SQLCOM_XA_COMMIT, 152 SQLCOM_XA_ROLLBACK, 153 SQLCOM_XA_RECOVER, 154 SQLCOM_SHOW_PROC_CODE, 155 SQLCOM_SHOW_FUNC_CODE, 156 SQLCOM_ALTER_TABLESPACE, 157 SQLCOM_INSTALL_PLUGIN, 158 SQLCOM_UNINSTALL_PLUGIN, 159 SQLCOM_BINLOG_BASE64_EVENT, 160 SQLCOM_SHOW_PLUGINS, 161 SQLCOM_CREATE_SERVER, 162 SQLCOM_DROP_SERVER, 163 SQLCOM_ALTER_SERVER, 164 SQLCOM_CREATE_EVENT, 165 SQLCOM_ALTER_EVENT, 166 SQLCOM_DROP_EVENT, 167 SQLCOM_SHOW_CREATE_EVENT, 168 SQLCOM_SHOW_EVENTS, 169 SQLCOM_SHOW_CREATE_TRIGGER, 170 SQLCOM_ALTER_DB_UPGRADE, 171 SQLCOM_SHOW_PROFILE, 172 SQLCOM_SHOW_PROFILES, 173 SQLCOM_SIGNAL, 174 SQLCOM_RESIGNAL, 175 SQLCOM_SHOW_RELAYLOG_EVENTS, 176 SQLCOM_GET_DIAGNOSTICS, 177 SQLCOM_ALTER_USER, 178 SQLCOM_EXPLAIN_OTHER, 179 SQLCOM_SHOW_CREATE_USER, 180 SQLCOM_SHUTDOWN, 181 SQLCOM_ALTER_INSTANCE, 182 /* This should be the last !!! */ 183 SQLCOM_END 184 }; 185 186 #endif /* _mysql_sql_command_h */ 187