MySQL 8.0.40
Source Code Documentation
dd::tables::Columns Class Reference

#include <columns.h>

Inheritance diagram for dd::tables::Columns:
[legend]

Public Types

enum  enum_fields {
  FIELD_ID = static_cast<uint>(Common_field::ID) , FIELD_TABLE_ID , FIELD_NAME , FIELD_ORDINAL_POSITION ,
  FIELD_TYPE , FIELD_IS_NULLABLE , FIELD_IS_ZEROFILL , FIELD_IS_UNSIGNED ,
  FIELD_CHAR_LENGTH , FIELD_NUMERIC_PRECISION , FIELD_NUMERIC_SCALE , FIELD_DATETIME_PRECISION ,
  FIELD_COLLATION_ID , FIELD_HAS_NO_DEFAULT , FIELD_DEFAULT_VALUE , FIELD_DEFAULT_VALUE_UTF8 ,
  FIELD_DEFAULT_OPTION , FIELD_UPDATE_OPTION , FIELD_IS_AUTO_INCREMENT , FIELD_IS_VIRTUAL ,
  FIELD_GENERATION_EXPRESSION , FIELD_GENERATION_EXPRESSION_UTF8 , FIELD_COMMENT , FIELD_HIDDEN ,
  FIELD_OPTIONS , FIELD_SE_PRIVATE_DATA , FIELD_COLUMN_KEY , FIELD_COLUMN_TYPE_UTF8 ,
  FIELD_SRS_ID , FIELD_IS_EXPLICIT_COLLATION , FIELD_ENGINE_ATTRIBUTE , FIELD_SECONDARY_ENGINE_ATTRIBUTE ,
  NUMBER_OF_FIELDS
}
 
enum  enum_indexes {
  INDEX_PK_ID = static_cast<uint>(Common_index::PK_ID) , INDEX_UK_TABLE_ID_NAME = static_cast<uint>(Common_index::UK_NAME) , INDEX_UK_TABLE_ID_ORDINAL_POSITION , INDEX_K_COLLATION_ID ,
  INDEX_K_SRS_ID
}
 
enum  enum_foreign_keys { FK_TABLE_ID , FK_COLLATION_ID , FK_SRS_ID }
 
- Public Types inherited from dd::Object_table_impl
enum class  Common_option {
  ENGINE , CHARSET , COLLATION , ROW_FORMAT ,
  STATS_PERSISTENT , TABLESPACE
}
 
enum class  Common_index { PK_ID , UK_NAME }
 
enum class  Common_field { ID }
 

Public Member Functions

 Columns ()
 
- Public Member Functions inherited from dd::Object_table_impl
 Object_table_impl (const String_type &schema_name, const String_type &table_name, const String_type &ddl_statement)
 
 Object_table_impl ()
 
const String_typename () const override
 Get the table name used by the target definition for the dictionary table. More...
 
Object_table_definition_impltarget_table_definition () override
 Get the target definition for the dictionary table. More...
 
const Object_table_definition_impltarget_table_definition () const override
 
void set_abandoned (uint last_dd_version) const override
 Mark the target definition for the dictionary table as abandoned. More...
 
bool is_abandoned () const override
 Check if the dictionary table is abandoned. More...
 
const Object_table_definition_implactual_table_definition () const override
 Get the actual definition for the dictionary table. More...
 
bool set_actual_table_definition (const Properties &table_def_properties) const override
 Set the actual definition for the dictionary table. More...
 
virtual int field_number (int target_field_number, const String_type &field_label) const
 
int field_number (const String_type &field_label) const override
 Get the field ordinal position in the object table. More...
 
bool populate (THD *) const override
 Execute low level code for populating the table. More...
 
bool is_hidden () const override
 Check if the table should be hidden. More...
 
void set_hidden (bool hidden) override
 Mark the dictionary table as hidden or visible. More...
 
 ~Object_table_impl () override=default
 
- Public Member Functions inherited from dd::Object_table
virtual ~Object_table ()=default
 

Static Public Member Functions

static const Columnsinstance ()
 
static const CHARSET_INFOname_collation ()
 
static Object_keycreate_key_by_table_id (Object_id table_id)
 
- Static Public Member Functions inherited from dd::Object_table
static Object_tablecreate_object_table ()
 Allocate a new Object_table instance on the heap. More...
 

Additional Inherited Members

- Protected Attributes inherited from dd::Object_table_impl
uint m_last_dd_version
 
Object_table_definition_impl m_target_def
 
bool m_actual_present
 
Object_table_definition_impl m_actual_def
 
bool m_hidden
 

Member Enumeration Documentation

◆ enum_fields

enum dd::tables::Columns::enum_fields
Enumerator
FIELD_ID 
FIELD_TABLE_ID 
FIELD_NAME 
FIELD_ORDINAL_POSITION 
FIELD_TYPE 
FIELD_IS_NULLABLE 
FIELD_IS_ZEROFILL 
FIELD_IS_UNSIGNED 
FIELD_CHAR_LENGTH 
FIELD_NUMERIC_PRECISION 
FIELD_NUMERIC_SCALE 
FIELD_DATETIME_PRECISION 
FIELD_COLLATION_ID 
FIELD_HAS_NO_DEFAULT 
FIELD_DEFAULT_VALUE 
FIELD_DEFAULT_VALUE_UTF8 
FIELD_DEFAULT_OPTION 
FIELD_UPDATE_OPTION 
FIELD_IS_AUTO_INCREMENT 
FIELD_IS_VIRTUAL 
FIELD_GENERATION_EXPRESSION 
FIELD_GENERATION_EXPRESSION_UTF8 
FIELD_COMMENT 
FIELD_HIDDEN 
FIELD_OPTIONS 
FIELD_SE_PRIVATE_DATA 
FIELD_COLUMN_KEY 
FIELD_COLUMN_TYPE_UTF8 
FIELD_SRS_ID 
FIELD_IS_EXPLICIT_COLLATION 
FIELD_ENGINE_ATTRIBUTE 
FIELD_SECONDARY_ENGINE_ATTRIBUTE 
NUMBER_OF_FIELDS 

◆ enum_foreign_keys

enum dd::tables::Columns::enum_foreign_keys
Enumerator
FK_TABLE_ID 
FK_COLLATION_ID 
FK_SRS_ID 

◆ enum_indexes

enum dd::tables::Columns::enum_indexes
Enumerator
INDEX_PK_ID 
INDEX_UK_TABLE_ID_NAME 
INDEX_UK_TABLE_ID_ORDINAL_POSITION 
INDEX_K_COLLATION_ID 
INDEX_K_SRS_ID 

Constructor & Destructor Documentation

◆ Columns()

dd::tables::Columns::Columns ( )

Member Function Documentation

◆ create_key_by_table_id()

Object_key * dd::tables::Columns::create_key_by_table_id ( Object_id  table_id)
static

◆ instance()

const Columns & dd::tables::Columns::instance ( )
static

◆ name_collation()

const CHARSET_INFO * dd::tables::Columns::name_collation ( )
static

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