MySQL  8.0.17
Source Code Documentation
Sql_cmd_insert_values Class Reference

Class that implements INSERT ... More...

#include <sql_insert.h>

Inheritance diagram for Sql_cmd_insert_values:
Sql_cmd_insert_base Sql_cmd_dml Sql_cmd

Public Member Functions

 Sql_cmd_insert_values (bool is_replace_arg, enum_duplicates duplicates_arg)
 
virtual enum_sql_command sql_command_code () const
 Return the command code for this statement. More...
 
virtual bool is_single_table_plan () const
 
- Public Member Functions inherited from Sql_cmd_insert_base
 Sql_cmd_insert_base (bool is_replace_arg, enum_duplicates duplicates_arg)
 
virtual void cleanup (THD *) override
 Command-specific reinitialization before execution of prepared statement. More...
 
virtual bool accept (THD *thd, Select_lex_visitor *visitor) override
 
- Public Member Functions inherited from Sql_cmd_dml
virtual bool is_data_change_stmt () const
 
virtual bool prepare (THD *thd)
 Command-specific resolving (doesn't include LEX::prepare()) More...
 
virtual bool execute (THD *thd)
 Execute this query once. More...
 
virtual bool is_dml () const
 
- Public Member Functions inherited from Sql_cmd
bool is_prepared () const
 
void set_owner (Prepared_statement *stmt)
 Set the owning prepared statement. More...
 
Prepared_statementget_owner ()
 Get the owning prepared statement. More...
 
virtual void unprepare (THD *thd)
 Temporary function used to "unprepare" a prepared statement after preparation, so that a subsequent execute statement will reprepare it. More...
 
virtual const MYSQL_LEX_CSTRINGeligible_secondary_storage_engine () const
 Is this statement of a type and on a form that makes it eligible for execution in a secondary storage engine? More...
 
void disable_secondary_storage_engine ()
 Disable use of secondary storage engines in this statement. More...
 
bool secondary_storage_engine_disabled () const
 Has use of secondary storage engines been disabled for this statement? More...
 
void use_secondary_storage_engine (const handlerton *hton)
 Mark the current statement as using a secondary storage engine. More...
 
bool using_secondary_storage_engine () const
 Is this statement using a secondary storage engine? More...
 
const handlertonsecondary_engine () const
 Get the handlerton of the secondary engine that is used for executing this statement, or nullptr if a secondary engine is not used. More...
 

Protected Member Functions

virtual bool execute_inner (THD *thd)
 Insert one or more rows from a VALUES list into a table. More...
 
- Protected Member Functions inherited from Sql_cmd_insert_base
virtual bool precheck (THD *thd) override
 Perform a precheck of table privileges for the specific operation. More...
 
virtual bool prepare_inner (THD *thd) override
 Prepare items in INSERT statement. More...
 
- Protected Member Functions inherited from Sql_cmd_dml
 Sql_cmd_dml ()
 
bool is_empty_query () const
 
void set_empty_query ()
 Set statement as returning no data. More...
 
- Protected Member Functions inherited from Sql_cmd
 Sql_cmd ()
 
virtual ~Sql_cmd ()
 
bool needs_explicit_preparation () const
 
void set_prepared ()
 Set this statement as prepared. More...
 

Additional Inherited Members

- Public Attributes inherited from Sql_cmd_insert_base
bool empty_field_list_on_rset
 
List< Iteminsert_field_list
 Field list to insert/replace. More...
 
List< List_iteminsert_many_values
 Row data to insert/replace. More...
 
uint value_count
 Number of values per row in insert_many_values, available after resolving. More...
 
List< Itemupdate_field_list
 ON DUPLICATE KEY UPDATE field list. More...
 
List< Itemupdate_value_list
 ON DUPLICATE KEY UPDATE data value list. More...
 
const enum_duplicates duplicates
 
- Protected Attributes inherited from Sql_cmd_insert_base
const bool is_replace
 
- Protected Attributes inherited from Sql_cmd_dml
LEXlex
 Pointer to LEX for this statement. More...
 
Query_resultresult
 Pointer to object for handling of the result. More...
 
bool m_empty_query
 True if query will produce no rows. More...
 
- Protected Attributes inherited from Sql_cmd
bool prepare_only
 

Detailed Description

Class that implements INSERT ...

VALUES and REPLACE ... VALUES statements.

Constructor & Destructor Documentation

◆ Sql_cmd_insert_values()

Sql_cmd_insert_values::Sql_cmd_insert_values ( bool  is_replace_arg,
enum_duplicates  duplicates_arg 
)
inlineexplicit

Member Function Documentation

◆ execute_inner()

bool Sql_cmd_insert_values::execute_inner ( THD thd)
protectedvirtual

Insert one or more rows from a VALUES list into a table.

Parameters
thdthread handler
Returns
false if success, true if error

Reimplemented from Sql_cmd_dml.

◆ is_single_table_plan()

virtual bool Sql_cmd_insert_values::is_single_table_plan ( ) const
inlinevirtual
Returns
true if implemented as single table plan, DML statement only

Reimplemented from Sql_cmd_dml.

◆ sql_command_code()

virtual enum_sql_command Sql_cmd_insert_values::sql_command_code ( ) const
inlinevirtual

Return the command code for this statement.

Implements Sql_cmd.


The documentation for this class was generated from the following files: