![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
#include <table_impl.h>
Public Member Functions | |
| Table_impl () | |
| ~Table_impl () override | |
| enum_table_type | type () const override | 
| bool | validate () const override | 
| bool | restore_children (Open_dictionary_tables_ctx *otx) override | 
| bool | store_children (Open_dictionary_tables_ctx *otx) override | 
| bool | drop_children (Open_dictionary_tables_ctx *otx) const override | 
| bool | restore_attributes (const Raw_record &r) override | 
| bool | store_attributes (Raw_record *r) override | 
| void | serialize (Sdi_wcontext *wctx, Sdi_writer *w) const override | 
| Converts *this into json.  More... | |
| bool | deserialize (Sdi_rcontext *rctx, const RJ_Value &val) override | 
| Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provided.  More... | |
| void | debug_print (String_type &outb) const override | 
| bool | is_temporary () const override | 
| void | set_is_temporary (bool is_temporary) override | 
| Object_id | collation_id () const override | 
| void | set_collation_id (Object_id collation_id) override | 
| Object_id | tablespace_id () const override | 
| void | set_tablespace_id (Object_id tablespace_id) override | 
| bool | is_explicit_tablespace () const override | 
| const String_type & | engine () const override | 
| void | set_engine (const String_type &engine) override | 
| enum_row_format | row_format () const override | 
| void | set_row_format (enum_row_format row_format) override | 
| const String_type & | comment () const override | 
| void | set_comment (const String_type &comment) override | 
| uint | last_checked_for_upgrade_version_id () const override | 
| void | mark_as_checked_for_upgrade () override | 
| const Properties & | se_private_data () const override | 
| Properties & | se_private_data () override | 
| bool | set_se_private_data (const String_type &se_private_data_raw) override | 
| bool | set_se_private_data (const Properties &se_private_data) override | 
| Object_id | se_private_id () const override | 
| void | set_se_private_id (Object_id se_private_id) override | 
| LEX_CSTRING | engine_attribute () const override | 
| void | set_engine_attribute (LEX_CSTRING a) override | 
| LEX_CSTRING | secondary_engine_attribute () const override | 
| void | set_secondary_engine_attribute (LEX_CSTRING a) override | 
| enum_partition_type | partition_type () const override | 
| void | set_partition_type (enum_partition_type partition_type) override | 
| enum_default_partitioning | default_partitioning () const override | 
| void | set_default_partitioning (enum_default_partitioning default_partitioning) override | 
| const String_type & | partition_expression () const override | 
| void | set_partition_expression (const String_type &partition_expression) override | 
| const String_type & | partition_expression_utf8 () const override | 
| void | set_partition_expression_utf8 (const String_type &partition_expression_utf8) override | 
| enum_subpartition_type | subpartition_type () const override | 
| void | set_subpartition_type (enum_subpartition_type subpartition_type) override | 
| enum_default_partitioning | default_subpartitioning () const override | 
| void | set_default_subpartitioning (enum_default_partitioning default_subpartitioning) override | 
| const String_type & | subpartition_expression () const override | 
| void | set_subpartition_expression (const String_type &subpartition_expression) override | 
| const String_type & | subpartition_expression_utf8 () const override | 
| void | set_subpartition_expression_utf8 (const String_type &subpartition_expression_utf8) override | 
| Index * | add_index () override | 
| Index * | add_first_index () override | 
| const Index_collection & | indexes () const override | 
| Index_collection * | indexes () override | 
| const Index * | get_index (Object_id index_id) const | 
| Index * | get_index (Object_id index_id) | 
| Foreign_key * | add_foreign_key () override | 
| const Foreign_key_collection & | foreign_keys () const override | 
| Foreign_key_collection * | foreign_keys () override | 
| virtual Foreign_key_parent * | add_foreign_key_parent () | 
| bool | reload_foreign_key_parents (THD *thd) override | 
| const Foreign_key_parent_collection & | foreign_key_parents () const override | 
| Partition * | add_partition () override | 
| const Partition_collection & | partitions () const override | 
| Partition_collection * | partitions () override | 
| const Partition_leaf_vector & | leaf_partitions () const override | 
| Partition_leaf_vector * | leaf_partitions () override | 
| Partition * | get_leaf_partition (const std::string &part_name) override | 
| const Partition * | get_leaf_partition (const std::string &part_name) const override | 
| void | add_leaf_partition (Partition *p) | 
| const Partition * | get_partition (Object_id partition_id) const | 
| Partition * | get_partition (Object_id partition_id) | 
| Partition * | get_partition (const String_type &name) | 
| Entity_object_impl * | impl () override | 
| const Entity_object_impl * | impl () const override | 
| Object_id | id () const override | 
| The unique dictionary object id.  More... | |
| bool | is_persistent () const override | 
| Is dictionary object persistent in dictionary tables ?  More... | |
| const String_type & | name () const override | 
| void | set_name (const String_type &name) override | 
| Object_id | schema_id () const override | 
| void | set_schema_id (Object_id schema_id) override | 
| uint | mysql_version_id () const override | 
| const Properties & | options () const override | 
| Properties & | options () override | 
| bool | set_options (const Properties &options) override | 
| bool | set_options (const String_type &options_raw) override | 
| ulonglong | created (bool convert_time) const override | 
| void | set_created (ulonglong created) override | 
| ulonglong | last_altered (bool convert_time) const override | 
| void | set_last_altered (ulonglong last_altered) override | 
| Column * | add_column () override | 
| bool | drop_column (const String_type &name) override | 
| const Column_collection & | columns () const override | 
| Column_collection * | columns () override | 
| const Column * | get_column (Object_id column_id) const | 
| Column * | get_column (Object_id column_id) | 
| const Column * | get_column (const String_type &name) const override | 
| Column * | get_column (const String_type &name) | 
| bool | update_aux_key (Aux_key *key) const override | 
| enum_hidden_type | hidden () const override | 
| void | set_hidden (enum_hidden_type hidden) override | 
| bool | has_trigger () const override | 
| Check if table has any triggers.  More... | |
| const Trigger_collection & | triggers () const override | 
| Get const reference to Trigger_collection.  More... | |
| Trigger_collection * | triggers () override | 
| Get non-const pointer to Trigger_collection.  More... | |
| void | copy_triggers (const Table *tab_obj) override | 
| Copy all the triggers from another dd::Table object.  More... | |
| Trigger * | add_trigger (Trigger::enum_action_timing at, Trigger::enum_event_type et) override | 
| Add new trigger to the table.  More... | |
| const Trigger * | get_trigger (const char *name) const override | 
| Get dd::Trigger object for the given trigger name.  More... | |
| Trigger * | add_trigger_following (const Trigger *trigger, Trigger::enum_action_timing at, Trigger::enum_event_type et) override | 
| Add new trigger just after the trigger specified in argument.  More... | |
| Trigger * | add_trigger_preceding (const Trigger *trigger, Trigger::enum_action_timing at, Trigger::enum_event_type et) override | 
| Add new trigger just before the trigger specified in argument.  More... | |
| void | drop_trigger (const Trigger *trigger) override | 
| Drop the given trigger object.  More... | |
| void | drop_all_triggers () override | 
| Drop all the trigger on this dd::Table object.  More... | |
| Check_constraint * | add_check_constraint () override | 
| const Check_constraint_collection & | check_constraints () const override | 
| Check_constraint_collection * | check_constraints () override | 
  Public Member Functions inherited from dd::Abstract_table_impl | |
| const Object_table & | object_table () const override | 
| const Column * | get_column (Object_id column_id) const | 
| Column * | get_column (Object_id column_id) | 
| Column * | get_column (const String_type &name) | 
  Public Member Functions inherited from dd::Entity_object_impl | |
| Entity_object_impl () | |
| void | set_id (Object_id id) | 
| Object_key * | create_primary_key () const override | 
| bool | has_new_primary_key () const override | 
| Indicates that object is guaranteed to have primary key value which doesn't exist in database (e.g.  More... | |
  Public Member Functions inherited from dd::Weak_object | |
| Weak_object ()=default | |
| Weak_object (const Weak_object &)=default | |
| virtual | ~Weak_object ()=default | 
  Public Member Functions inherited from dd::Weak_object_impl_< use_pfs > | |
| Weak_object_impl_ ()=default | |
| ~Weak_object_impl_ () override=default | |
| void * | operator new (size_t size, const std::nothrow_t &nt) noexcept | 
| void | operator delete (void *ptr, const std::nothrow_t &nt) noexcept | 
| void * | operator new (size_t size) noexcept | 
| void | operator delete (void *ptr) noexcept | 
| virtual bool | store (Open_dictionary_tables_ctx *otx) | 
| Store the DD object into DD table.  More... | |
| bool | drop (Open_dictionary_tables_ctx *otx) const | 
| Drop the DD object from DD table.  More... | |
  Public Member Functions inherited from dd::Abstract_table | |
| virtual bool | update_id_key (Id_key *key) const | 
| virtual bool | update_name_key (Name_key *key) const | 
| ~Abstract_table () override=default | |
  Public Member Functions inherited from dd::Table | |
| bool | update_aux_key (Aux_key *key) const override | 
| ~Table () override=default | |
| const Table & | table () const | 
| Dummy method to be able to use Partition and Table interchangeably in templates.  More... | |
| Table & | table () | 
Static Public Member Functions | |
| static void | register_tables (Open_dictionary_tables_ctx *otx) | 
  Static Public Member Functions inherited from dd::Abstract_table_impl | |
| static void | register_tables (Open_dictionary_tables_ctx *otx) | 
  Static Public Member Functions inherited from dd::Abstract_table | |
| static bool | update_id_key (Id_key *key, Object_id id) | 
| static bool | update_name_key (Name_key *key, Object_id schema_id, const String_type &name) | 
  Static Public Member Functions inherited from dd::Table | |
| static bool | update_aux_key (Aux_key *key, const String_type &engine, Object_id se_private_id) | 
Private Member Functions | |
| bool | store_triggers (Open_dictionary_tables_ctx *otx) | 
| Store the trigger object in DD table.  More... | |
| bool | load_foreign_key_parents (Open_dictionary_tables_ctx *otx) | 
| uint | get_max_action_order (Trigger::enum_action_timing at, Trigger::enum_event_type et) const | 
| void | reorder_action_order (Trigger::enum_action_timing at, Trigger::enum_event_type et) | 
| Trigger_impl * | create_trigger () | 
| Table_impl (const Table_impl &src) | |
| Table_impl * | clone () const override | 
| Allocate a new object graph and invoke the copy constructor for each object.  More... | |
| Table_impl * | clone_dropped_object_placeholder () const override | 
| Allocate a new object which can serve as a placeholder for the original object in the Dictionary_client's dropped registry.  More... | |
| dd::Table_impl::Table_impl | ( | ) | 
      
  | 
  override | 
      
  | 
  private | 
      
  | 
  overridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  overridevirtual | 
Implements dd::Table.
      
  | 
  virtual | 
      
  | 
  inline | 
      
  | 
  overridevirtual | 
Add new trigger to the table.
| at | - Action timing of the trigger to be added. | 
| et | - Event type of the trigger to be added. | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Add new trigger just after the trigger specified in argument.
| trigger | - dd::Trigger object after which the new trigger should be created. | 
| at | - Action timing of the trigger to be added. | 
| et | - Event type of the trigger to be added. | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Add new trigger just before the trigger specified in argument.
| trigger | - dd::Trigger object before which the new trigger should be created. | 
| at | - Action timing of the trigger to be added. | 
| et | - Event type of the trigger to be added. | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverrideprivatevirtual | 
Allocate a new object graph and invoke the copy constructor for each object.
Implements dd::Table.
      
  | 
  inlineoverrideprivatevirtual | 
Allocate a new object which can serve as a placeholder for the original object in the Dictionary_client's dropped registry.
Such object has the same keys as the original but has no other info and as result occupies less memory.
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Copy all the triggers from another dd::Table object.
| tab_obj | Pointer to Table from which the triggers are copied. | 
Implements dd::Table.
      
  | 
  private | 
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  overridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Re-establishes the state of *this by reading sdi information from the rapidjson DOM subobject provided.
Cross-references encountered within this object are tracked in sdictx, so that they can be updated when the entire object graph has been established.
| rctx | stores book-keeping information for the deserialization process | 
| val | subobject of rapidjson DOM containing json representation of this object | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Drop all the trigger on this dd::Table object.
The method returns void, as we just remove the trigger from dd::Collection (dd::Table_impl::m_triggers) in memory. The trigger will be removed from mysql.triggers DD table when the dd::Table object is stored/updated.
Implements dd::Table.
      
  | 
  overridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  overridevirtual | 
Drop the given trigger object.
The method returns void, as we just remove the trigger from dd::Collection (dd::Table_impl::m_triggers) in memory. The trigger will be removed from mysql.triggers DD table when the dd::Table object is stored/updated.
| trigger | - dd::Trigger object to be dropped. | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inline | 
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  overridevirtual | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Implements dd::Table.
      
  | 
  private | 
| Partition * dd::Table_impl::get_partition | ( | const String_type & | name | ) | 
      
  | 
  overridevirtual | 
Get dd::Trigger object for the given trigger name.
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Check if table has any triggers.
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
The unique dictionary object id.
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Is dictionary object persistent in dictionary tables ?
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  private | 
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  static | 
      
  | 
  private | 
      
  | 
  overridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  overridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Converts *this into json.
Converts all member variables that are to be included in the sdi into json by transforming them appropriately and passing them to the rapidjson writer provided.
| wctx | opaque context for data needed by serialization | 
| w | rapidjson writer which will perform conversion to json | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  overridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  overridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  private | 
Store the trigger object in DD table.
| otx | current Open_dictionary_tables_ctx | 
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Get const reference to Trigger_collection.
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Get non-const pointer to Trigger_collection.
Implements dd::Table.
      
  | 
  inlineoverridevirtual | 
Implements dd::Abstract_table.
      
  | 
  inlineoverridevirtual | 
Reimplemented from dd::Abstract_table.
      
  | 
  overridevirtual | 
Reimplemented from dd::Abstract_table_impl.
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private |