23#ifndef SQL_CMD_DML_INCLUDED
24#define SQL_CMD_DML_INCLUDED
81 bool is_dml()
const override {
return true; }
Definition: query_result.h:53
Definition: sql_cmd_dml.h:34
bool is_empty_query() const
Definition: sql_cmd_dml.h:110
bool is_dml() const override
Definition: sql_cmd_dml.h:81
virtual bool precheck(THD *thd)=0
Perform a precheck of table privileges for the specific operation.
virtual bool prepare_inner(THD *thd)=0
Perform the command-specific parts of DML command preparation, to be called from prepare()
LEX * lex
Pointer to LEX for this statement.
Definition: sql_cmd_dml.h:212
Sql_cmd_dml()
Definition: sql_cmd_dml.h:97
virtual bool may_use_cursor() const
Definition: sql_cmd_dml.h:83
virtual bool is_data_change_stmt() const
Definition: sql_cmd_dml.h:37
void set_empty_query()
Set statement as returning no data.
Definition: sql_cmd_dml.h:116
void set_lazy_result()
Signal that root result object needs preparing in next execution.
Definition: sql_cmd_dml.h:94
bool m_lazy_result
True: prepare query result on next execution.
Definition: sql_cmd_dml.h:215
virtual bool check_privileges(THD *thd)=0
Check privileges on a prepared statement, called at start of execution of the statement.
bool m_empty_query
True if query will produce no rows.
Definition: sql_cmd_dml.h:214
Query_result * result
Pointer to object for handling of the result.
Definition: sql_cmd_dml.h:213
bool is_single_table_plan() const override
Definition: sql_cmd_dml.h:85
Representation of an SQL command.
Definition: sql_cmd.h:64
bool is_prepared() const
Definition: sql_cmd.h:92
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:33
Fido Client Authentication nullptr
Definition: fido_client_plugin.cc:221
bool prepare(THD *thd) override
Command-specific resolving (doesn't include LEX::prepare())
Definition: sql_select.cc:314
bool check_all_table_privileges(THD *thd)
Read and check privileges for all tables in a DML statement.
Definition: sql_select.cc:924
bool execute(THD *thd) override
Execute a DML statement.
Definition: sql_select.cc:482
Query_result * query_result() const
Definition: sql_select.cc:795
void set_query_result(Query_result *result)
Set query result object for this query statement.
Definition: sql_select.cc:802
virtual bool save_cmd_properties(THD *thd)
Save command properties, such as prepared query details and table props.
Definition: sql_select.cc:791
virtual bool restore_cmd_properties(THD *thd)
Restore command properties before execution.
Definition: sql_select.cc:784
const MYSQL_LEX_CSTRING * get_eligible_secondary_engine() const
Helper function that checks if the command is eligible for secondary engine and if that's true return...
Definition: sql_select.cc:962
virtual bool execute_inner(THD *thd)
The inner parts of query optimization and execution.
Definition: sql_select.cc:760
Representation of an SQL command.
The LEX object currently serves three different purposes:
Definition: sql_lex.h:3693
Definition: mysql_lex_string.h:39