MySQL 8.0.39
Source Code Documentation
|
#include <sql_insert.h>
Public Member Functions | |
Query_result_create (Table_ref *create_table_arg, mem_root_deque< Item * > *fields, enum_duplicates duplic, Table_ref *select_tables_arg) | |
bool | prepare (THD *thd, const mem_root_deque< Item * > &list, Query_expression *u) override |
Perform preparation specific to the query expression or DML statement. More... | |
void | store_values (THD *thd, const mem_root_deque< Item * > &values) override |
bool | send_eof (THD *thd) override |
void | abort_result_set (THD *thd) override |
bool | create_table_for_query_block (THD *thd) override |
Create new table. More... | |
bool | start_execution (THD *thd) override |
Lock the newly created table and prepare it for insertion. More... | |
void | set_two_fields (HA_CREATE_INFO *create_info_arg, Alter_info *alter_info_arg) |
Public Member Functions inherited from Query_result_insert | |
Query_result_insert (Table_ref *table_list_par, mem_root_deque< Item * > *target_columns, mem_root_deque< Item * > *target_or_source_columns, mem_root_deque< Item * > *update_fields, mem_root_deque< Item * > *update_values, enum_duplicates duplic) | |
bool | need_explain_interceptor () const override |
bool | send_data (THD *thd, const mem_root_deque< Item * > &items) override |
void | cleanup () override |
Cleanup after this execution. More... | |
Public Member Functions inherited from Query_result_interceptor | |
Query_result_interceptor () | |
uint | field_count (const mem_root_deque< Item * > &) const override |
bool | send_result_set_metadata (THD *, const mem_root_deque< Item * > &, uint) override |
bool | is_interceptor () const final |
Checks if this Query_result intercepts and transforms the result set. More... | |
Public Member Functions inherited from Query_result | |
Query_result () | |
virtual | ~Query_result ()=default |
virtual bool | needs_file_privilege () const |
virtual bool | change_query_result (THD *, Query_result *) |
Change wrapped Query_result. More... | |
virtual bool | check_supports_cursor () const |
Check if this query result set supports cursors. More... | |
virtual bool | reset () |
Cleanup after one execution of the unit, to be ready for a next execution inside the same statement. More... | |
virtual void | set_limit (ha_rows) |
Only overridden (and non-empty) for Query_result_union, q.v. More... | |
virtual Server_side_cursor * | cursor () const |
Private Member Functions | |
bool | stmt_binlog_is_trans () const override |
Indicates whether this statement should be written to binary log's transactional cache in statement mode. More... | |
int | binlog_show_create_table (THD *thd) |
void | drop_open_table (THD *thd) |
Close and drop just created table in CREATE TABLE ... SELECT in case of error. More... | |
Private Attributes | |
Table_ref * | create_table |
Handle for table to be created. More... | |
HA_CREATE_INFO * | create_info {nullptr} |
Contains further information for table creation. More... | |
Alter_info * | alter_info {nullptr} |
Contains further information for table creation. More... | |
Field ** | field |
Table_ref * | select_tables |
List of tables that are select from. More... | |
Field ** | table_fields {nullptr} |
Pointer to first field in table generated from query expression. More... | |
MYSQL_LOCK * | m_lock {nullptr} |
lock data for tmp table More... | |
MYSQL_LOCK ** | m_plock {nullptr} |
m_lock or thd->extra_lock More... | |
handlerton * | m_post_ddl_ht {nullptr} |
If table being created has SE supporting atomic DDL, pointer to SE's handlerton object to be used for calling SE post-DDL hook, nullptr - otherwise. More... | |
Additional Inherited Members | |
Public Attributes inherited from Query_result_insert | |
Table_ref * | table_list |
The table used for insertion of rows. More... | |
TABLE * | table {nullptr} |
ulonglong | autoinc_value_of_last_inserted_row {0} |
COPY_INFO | info |
COPY_INFO | update |
the UPDATE part of "info" More... | |
bool | insert_into_view |
Public Attributes inherited from Query_result | |
ha_rows | estimated_rowcount |
Number of records estimated in this result. More... | |
double | estimated_cost |
Cost to execute the subquery which produces this result. More... | |
Protected Attributes inherited from Query_result_insert | |
bool | bulk_insert_started {false} |
ha_start_bulk_insert has been called. Never cleared. More... | |
Protected Attributes inherited from Query_result | |
Query_expression * | unit |
Query_result_create::Query_result_create | ( | Table_ref * | create_table_arg, |
mem_root_deque< Item * > * | fields, | ||
enum_duplicates | duplic, | ||
Table_ref * | select_tables_arg | ||
) |
|
overridevirtual |
Reimplemented from Query_result_insert.
|
private |
|
overridevirtual |
Create new table.
thd | thread handler |
Reimplemented from Query_result.
|
private |
Close and drop just created table in CREATE TABLE ... SELECT in case of error.
|
overridevirtual |
Perform preparation specific to the query expression or DML statement.
Reimplemented from Query_result_insert.
|
overridevirtual |
Reimplemented from Query_result_insert.
|
inline |
|
overridevirtual |
Lock the newly created table and prepare it for insertion.
Reimplemented from Query_result_insert.
|
overrideprivatevirtual |
Indicates whether this statement should be written to binary log's transactional cache in statement mode.
Reimplemented from Query_result_insert.
|
overridevirtual |
Reimplemented from Query_result_insert.
|
private |
Contains further information for table creation.
|
private |
Contains further information for table creation.
|
private |
Handle for table to be created.
|
private |
|
private |
lock data for tmp table
|
private |
m_lock or thd->extra_lock
|
private |
If table being created has SE supporting atomic DDL, pointer to SE's handlerton object to be used for calling SE post-DDL hook, nullptr - otherwise.
|
private |
List of tables that are select from.
Pointer to first field in table generated from query expression.