MySQL 8.4.2
Source Code Documentation
Sql_cmd_ddl_trigger_common Class Reference

This class has common code for CREATE/DROP TRIGGER statements. More...

#include <sql_trigger.h>

Inheritance diagram for Sql_cmd_ddl_trigger_common:
[legend]

Public Member Functions

void set_table (Table_ref *trigger_table)
 Set a table associated with a trigger. More...
 
- Public Member Functions inherited from Sql_cmd_ddl
enum enum_sql_cmd_type sql_cmd_type () const override
 
- Public Member Functions inherited from Sql_cmd
virtual enum_sql_command sql_command_code () const =0
 Return the command code for this statement. More...
 
bool needs_explicit_preparation () const
 
bool is_regular () const
 
bool is_prepared () const
 
virtual bool prepare (THD *)
 Prepare this SQL statement. More...
 
virtual bool execute (THD *thd)=0
 Execute 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_statementowner () 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_single_table_plan () const
 
virtual bool accept (THD *, Select_lex_visitor *)
 
virtual const MYSQL_LEX_CSTRINGeligible_secondary_storage_engine (THD *) const
 Is this statement of a type and on a form that makes it eligible for execution in a secondary storage engine? More...
 
virtual bool is_bulk_load () const
 
void disable_secondary_storage_engine ()
 Disable use of secondary storage engines in this statement. More...
 
void enable_secondary_storage_engine ()
 
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...
 
void set_optional_transform_prepared (bool value)
 
bool is_optional_transform_prepared ()
 

Protected Member Functions

 Sql_cmd_ddl_trigger_common ()
 
bool check_trg_priv_on_subj_table (THD *thd, Table_ref *table) const
 Check that the user has TRIGGER privilege on the subject table. More...
 
TABLEopen_and_lock_subj_table (THD *thd, Table_ref *tables, MDL_ticket **mdl_ticket) const
 Open and lock a table associated with a trigger. More...
 
void restore_original_mdl_state (THD *thd, MDL_ticket *mdl_ticket) const
 Restore original state of meta-data locks. More...
 
- Protected Member Functions inherited from Sql_cmd
 Sql_cmd ()
 
virtual ~Sql_cmd ()
 
void set_prepared ()
 Set this statement as prepared. More...
 

Protected Attributes

Table_refm_trigger_table {nullptr}
 

Detailed Description

This class has common code for CREATE/DROP TRIGGER statements.

Constructor & Destructor Documentation

◆ Sql_cmd_ddl_trigger_common()

Sql_cmd_ddl_trigger_common::Sql_cmd_ddl_trigger_common ( )
inlineprotected

Member Function Documentation

◆ check_trg_priv_on_subj_table()

bool Sql_cmd_ddl_trigger_common::check_trg_priv_on_subj_table ( THD thd,
Table_ref table 
) const
protected

Check that the user has TRIGGER privilege on the subject table.

Parameters
thdcurrent thread context
tabletable to check
Returns
Operation status.
Return values
falseSuccess
trueFailure

◆ open_and_lock_subj_table()

TABLE * Sql_cmd_ddl_trigger_common::open_and_lock_subj_table ( THD thd,
Table_ref tables,
MDL_ticket **  mdl_ticket 
) const
protected

Open and lock a table associated with a trigger.

Parameters
[in]thdcurrent thread context
[in]tablestrigger's table
[out]mdl_ticketgranted metadata lock
Returns
Opened TABLE object on success, nullptr on failure.

◆ restore_original_mdl_state()

void Sql_cmd_ddl_trigger_common::restore_original_mdl_state ( THD thd,
MDL_ticket mdl_ticket 
) const
protected

Restore original state of meta-data locks.

Parameters
thdcurrent thread context
mdl_ticketgranted metadata lock

◆ set_table()

void Sql_cmd_ddl_trigger_common::set_table ( Table_ref trigger_table)
inline

Set a table associated with a trigger.

Parameters
trigger_tablea table associated with a trigger.

Member Data Documentation

◆ m_trigger_table

Table_ref* Sql_cmd_ddl_trigger_common::m_trigger_table {nullptr}
protected

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