MySQL 8.0.39
Source Code Documentation
|
Sql_cmd_truncate_table represents the TRUNCATE statement. More...
#include <sql_truncate.h>
Public Member Functions | |
Sql_cmd_truncate_table ()=default | |
Constructor, used to represent a TRUNCATE statement. More... | |
~Sql_cmd_truncate_table () override=default | |
bool | execute (THD *) override |
Execute a TRUNCATE statement at runtime. More... | |
enum_sql_command | sql_command_code () const override |
Return the command code for this statement. More... | |
Public Member Functions inherited from Sql_cmd | |
bool | needs_explicit_preparation () const |
bool | is_regular () const |
bool | is_prepared () const |
virtual bool | prepare (THD *) |
Prepare this SQL statement. More... | |
virtual void | cleanup (THD *) |
Command-specific reinitialization before execution of prepared statement. More... | |
void | set_owner (Prepared_statement *stmt) |
Set the owning prepared statement. More... | |
Prepared_statement * | owner () const |
Get the owning prepared statement. More... | |
void | set_as_part_of_sp () |
Mark statement as part of procedure. More... | |
bool | is_part_of_sp () const |
virtual bool | is_dml () const |
virtual bool | is_single_table_plan () const |
virtual bool | accept (THD *, Select_lex_visitor *) |
virtual const MYSQL_LEX_CSTRING * | eligible_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 handlerton * | secondary_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... | |
void | set_optional_transform_prepared (bool value) |
bool | is_optional_transform_prepared () |
Private Member Functions | |
bool | lock_table (THD *, Table_ref *) |
void | truncate_base (THD *, Table_ref *) |
Optimized delete of all rows by doing a full generate of the base (non-temporary) table. More... | |
void | truncate_temporary (THD *, Table_ref *) |
Optimized delete of all rows by doing a full generate of the temporary table. More... | |
void | end_transaction (THD *, bool, bool) |
Completes transaction by attempting to binlog and commit if truncate has been successful so far. More... | |
void | cleanup_base (THD *, const handlerton *) |
Performs cleanup actions after truncate of a normal (non-temporary) table. More... | |
void | cleanup_temporary (THD *, handlerton *, const Table_ref &, Up_table *, const std::string &) |
Reopens a temporary table after truncate if supported. More... | |
Private Attributes | |
MDL_ticket * | m_ticket_downgrade = nullptr |
Set if a lock must be downgraded after truncate is done. More... | |
bool | m_error = true |
Track error status from functions called. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Sql_cmd | |
Sql_cmd () | |
virtual | ~Sql_cmd () |
void | set_prepared () |
Set this statement as prepared. More... | |
Sql_cmd_truncate_table represents the TRUNCATE statement.
|
default |
Constructor, used to represent a TRUNCATE statement.
|
overridedefault |
|
private |
Performs cleanup actions after truncate of a normal (non-temporary) table.
Calls post_ddl hook, reopens locked tables in locked_tables mode and possibly downgrades a temporarily upgraded MDL.
|
private |
Reopens a temporary table after truncate if supported.
Deletes table and flags error if unuccessful.
|
private |
Completes transaction by attempting to binlog and commit if truncate has been successful so far.
Rolls back if truncate has already failed, or if binlogging or commit fails.
|
overridevirtual |
Execute a TRUNCATE statement at runtime.
thd | The current thread. |
Implements Sql_cmd.
|
inlineoverridevirtual |
Return the command code for this statement.
Implements Sql_cmd.
Optimized delete of all rows by doing a full generate of the base (non-temporary) table.
thd | Thread context. |
table_ref | Table list element for the table to be truncated. |
Optimized delete of all rows by doing a full generate of the temporary table.
thd | Thread context. |
table_ref | Table list element for the table to be truncated. |
|
private |
Track error status from functions called.
|
private |
Set if a lock must be downgraded after truncate is done.