Struct mariadb_sys::TABLE_LIST
source · #[repr(C)]pub struct TABLE_LIST {Show 144 fields
pub next_local: *mut TABLE_LIST,
pub next_global: *mut TABLE_LIST,
pub prev_global: *mut *mut TABLE_LIST,
pub db: LEX_CSTRING,
pub table_name: LEX_CSTRING,
pub schema_table_name: LEX_CSTRING,
pub alias: LEX_CSTRING,
pub option: *const c_char,
pub on_expr: *mut Item,
pub on_context: *mut Name_resolution_context,
pub table_function: *mut Table_function_json_table,
pub sj_on_expr: *mut Item,
pub sj_inner_tables: table_map,
pub sj_in_exprs: uint,
pub sj_subq_pred: *mut Item_in_subselect,
pub original_subq_pred_used_tables: table_map,
pub jtbm_subselect: *mut Item_in_subselect,
pub jtbm_table_no: uint,
pub sj_mat_info: *mut SJ_MATERIALIZATION_INFO,
pub prep_on_expr: *mut Item,
pub cond_equal: *mut COND_EQUAL,
pub natural_join: *mut TABLE_LIST,
pub is_natural_join: bool,
pub join_using_fields: *mut List,
pub join_columns: *mut List,
pub is_join_columns_complete: bool,
pub next_name_resolution_table: *mut TABLE_LIST,
pub index_hints: *mut List,
pub table: *mut TABLE,
pub table_id: ulonglong,
pub derived_result: *mut select_unit,
pub delete_while_scanning: bool,
pub map: table_map,
pub correspondent_table: *mut TABLE_LIST,
pub derived: *mut st_select_lex_unit,
pub with: *mut With_element,
pub with_internal_reference_map: table_map,
pub next_with_rec_ref: *mut TABLE_LIST,
pub is_derived_with_recursive_reference: bool,
pub block_handle_derived: bool,
pub dt_handler: *mut derived_handler,
pub pushdown_derived: *mut Pushdown_derived,
pub schema_table: *mut ST_SCHEMA_TABLE,
pub schema_select_lex: *mut st_select_lex,
pub schema_table_reformed: bool,
pub schema_table_param: *mut TMP_TABLE_PARAM,
pub select_lex: *mut st_select_lex,
pub view: *mut LEX,
pub field_translation: *mut Field_translator,
pub field_translation_end: *mut Field_translator,
pub field_translation_updated: bool,
pub merge_underlying_list: *mut TABLE_LIST,
pub view_tables: *mut List,
pub belong_to_view: *mut TABLE_LIST,
pub belong_to_derived: *mut TABLE_LIST,
pub referencing_view: *mut TABLE_LIST,
pub view_used_tables: table_map,
pub map_exec: table_map,
pub tablenr_exec: uint,
pub maybe_null_exec: uint,
pub parent_l: *mut TABLE_LIST,
pub security_ctx: *mut Security_context,
pub tabledef_version_buf: [uchar; 20],
pub tabledef_version: LEX_CUSTRING,
pub view_sctx: *mut Security_context,
pub allowed_show: bool,
pub where_: *mut Item,
pub check_option: *mut Item,
pub select_stmt: LEX_STRING,
pub md5: LEX_CSTRING,
pub source: LEX_CSTRING,
pub view_db: LEX_CSTRING,
pub view_name: LEX_CSTRING,
pub hr_timestamp: LEX_STRING,
pub definer: LEX_USER,
pub file_version: ulonglong,
pub mariadb_version: ulonglong,
pub updatable_view: ulonglong,
pub algorithm: ulonglong,
pub view_suid: ulonglong,
pub with_check: ulonglong,
pub effective_with_check: uint8,
pub derived_type: uint8,
pub grant: GRANT_INFO,
pub engine_data: ulonglong,
pub callback_func: qc_engine_callback,
pub lock_type: Type,
pub mdl_type: Type,
pub table_options: ulong,
pub outer_join: uint,
pub shared: uint,
pub updatable: bool,
pub straight: bool,
pub updating: bool,
pub ignore_leaves: bool,
pub crashed: bool,
pub skip_locked: bool,
pub dep_tables: table_map,
pub on_expr_dep_tables: table_map,
pub nested_join: *mut st_nested_join,
pub embedding: *mut TABLE_LIST,
pub join_list: *mut List,
pub lifted: bool,
pub cacheable_table: bool,
pub table_in_first_from_clause: bool,
pub open_type: Type,
pub contain_auto_increment: bool,
pub compact_view_format: bool,
pub where_processed: bool,
pub check_option_processed: bool,
pub required_type: Type,
pub db_type: *mut handlerton,
pub timestamp_buffer: [c_char; 20],
pub prelocking_placeholder: Type,
pub open_strategy: Type,
pub is_alias: bool,
pub is_fqtn: bool,
pub fill_me: bool,
pub merged: bool,
pub merged_for_insert: bool,
pub sequence: bool,
pub vers_skip_create: query_id_t,
pub used_items: List,
pub persistent_used_items: List,
pub view_creation_ctx: *mut View_creation_ctx,
pub view_client_cs_name: LEX_CSTRING,
pub view_connection_cl_name: LEX_CSTRING,
pub view_body_utf8: LEX_CSTRING,
pub trg_event_map: uint8,
pub slave_fk_event_map: uint8,
pub optimized_away: bool,
pub materialized: bool,
pub i_s_requested_object: uint,
pub prohibit_cond_pushdown: bool,
pub table_open_method: uint,
pub schema_table_state: Type,
pub is_table_read_plan: *mut IS_table_read_plan,
pub mdl_request: MDL_request,
pub partition_names: *mut List,
pub vers_conditions: vers_select_conds_t,
pub period_conditions: vers_select_conds_t,
pub for_insert_data: my_bool,
pub m_table_ref_type: Type,
pub m_table_ref_version: ulonglong,
}
Fields§
§next_local: *mut TABLE_LIST
§next_global: *mut TABLE_LIST
§prev_global: *mut *mut TABLE_LIST
§db: LEX_CSTRING
§table_name: LEX_CSTRING
§schema_table_name: LEX_CSTRING
§alias: LEX_CSTRING
§option: *const c_char
§on_expr: *mut Item
§on_context: *mut Name_resolution_context
§table_function: *mut Table_function_json_table
§sj_on_expr: *mut Item
§sj_inner_tables: table_map
§sj_in_exprs: uint
§sj_subq_pred: *mut Item_in_subselect
§original_subq_pred_used_tables: table_map
§jtbm_subselect: *mut Item_in_subselect
§jtbm_table_no: uint
§sj_mat_info: *mut SJ_MATERIALIZATION_INFO
§prep_on_expr: *mut Item
§cond_equal: *mut COND_EQUAL
§natural_join: *mut TABLE_LIST
§is_natural_join: bool
§join_using_fields: *mut List
§join_columns: *mut List
§is_join_columns_complete: bool
§next_name_resolution_table: *mut TABLE_LIST
§index_hints: *mut List
§table: *mut TABLE
§table_id: ulonglong
§derived_result: *mut select_unit
§delete_while_scanning: bool
§map: table_map
§correspondent_table: *mut TABLE_LIST
§derived: *mut st_select_lex_unit
Normally, this field is non-null for anonymous derived tables only.
@details This field is set to non-null for
- Anonymous derived tables, In this case it points to the SELECT_LEX_UNIT representing the derived table. E.g. for a query
@verbatim SELECT * FROM (SELECT a FROM t1) b @endverbatim
For the @c TABLE_LIST representing the derived table @c b, @c derived points to the SELECT_LEX_UNIT representing the result of the query within parenteses.
- Views. This is set for views with @verbatim ALGORITHM = TEMPTABLE @endverbatim by mysql_make_view().
@note Inside views, a subquery in the @c FROM clause is not allowed. @note Do not use this field to separate views/base tables/anonymous derived tables. Use TABLE_LIST::is_anonymous_derived_table().
with: *mut With_element
§with_internal_reference_map: table_map
§next_with_rec_ref: *mut TABLE_LIST
§is_derived_with_recursive_reference: bool
§block_handle_derived: bool
§dt_handler: *mut derived_handler
§pushdown_derived: *mut Pushdown_derived
§schema_table: *mut ST_SCHEMA_TABLE
§schema_select_lex: *mut st_select_lex
§schema_table_reformed: bool
§schema_table_param: *mut TMP_TABLE_PARAM
§select_lex: *mut st_select_lex
§view: *mut LEX
§field_translation: *mut Field_translator
§field_translation_end: *mut Field_translator
§field_translation_updated: bool
§merge_underlying_list: *mut TABLE_LIST
§view_tables: *mut List
§belong_to_view: *mut TABLE_LIST
§belong_to_derived: *mut TABLE_LIST
§referencing_view: *mut TABLE_LIST
§view_used_tables: table_map
§map_exec: table_map
§tablenr_exec: uint
§maybe_null_exec: uint
§parent_l: *mut TABLE_LIST
§security_ctx: *mut Security_context
§tabledef_version_buf: [uchar; 20]
§tabledef_version: LEX_CUSTRING
§view_sctx: *mut Security_context
§allowed_show: bool
§where_: *mut Item
§check_option: *mut Item
§select_stmt: LEX_STRING
§md5: LEX_CSTRING
§source: LEX_CSTRING
§view_db: LEX_CSTRING
§view_name: LEX_CSTRING
§hr_timestamp: LEX_STRING
§definer: LEX_USER
§file_version: ulonglong
§mariadb_version: ulonglong
§updatable_view: ulonglong
§algorithm: ulonglong
The declared algorithm, if this is a view.
@details One of
- VIEW_ALGORITHM_UNDEFINED
- VIEW_ALGORITHM_TMPTABLE
- VIEW_ALGORITHM_MERGE @to do Replace with an enum
view_suid: ulonglong
§with_check: ulonglong
§effective_with_check: uint8
§derived_type: uint8
The view algorithm that is actually used, if this is a view.
@details One of
- VIEW_ALGORITHM_UNDEFINED
- VIEW_ALGORITHM_TMPTABLE
- VIEW_ALGORITHM_MERGE @to do Replace with an enum
grant: GRANT_INFO
§engine_data: ulonglong
§callback_func: qc_engine_callback
§lock_type: Type
§mdl_type: Type
§table_options: ulong
§outer_join: uint
§updatable: bool
§straight: bool
§updating: bool
§ignore_leaves: bool
§crashed: bool
§skip_locked: bool
§dep_tables: table_map
§on_expr_dep_tables: table_map
§nested_join: *mut st_nested_join
§embedding: *mut TABLE_LIST
§join_list: *mut List
§lifted: bool
§cacheable_table: bool
§table_in_first_from_clause: bool
§open_type: Type
Specifies which kind of table should be open for this element of table list.
contain_auto_increment: bool
§compact_view_format: bool
§where_processed: bool
§check_option_processed: bool
§required_type: Type
§db_type: *mut handlerton
§timestamp_buffer: [c_char; 20]
§prelocking_placeholder: Type
§open_strategy: Type
§is_alias: bool
TRUE if an alias for this table was specified in the SQL.
is_fqtn: bool
TRUE if the table is referred to in the statement using a fully qualified name (<db_name>.<table_name>).
fill_me: bool
§merged: bool
§merged_for_insert: bool
§sequence: bool
§vers_skip_create: query_id_t
§used_items: List
§persistent_used_items: List
§view_creation_ctx: *mut View_creation_ctx
§view_client_cs_name: LEX_CSTRING
§view_connection_cl_name: LEX_CSTRING
§view_body_utf8: LEX_CSTRING
§trg_event_map: uint8
Indicates what triggers we need to pre-load for this TABLE_LIST when opening an associated TABLE. This is filled after the parsed tree is created.
slave_fk_event_map is filled on the slave side with bitmaps value representing row-based event operation to help find and prelock possible FK constrain-related child tables.
slave_fk_event_map: uint8
Indicates what triggers we need to pre-load for this TABLE_LIST when opening an associated TABLE. This is filled after the parsed tree is created.
slave_fk_event_map is filled on the slave side with bitmaps value representing row-based event operation to help find and prelock possible FK constrain-related child tables.
optimized_away: bool
§materialized: bool
TRUE <=> already materialized. Valid only for materialized derived tables/views.
i_s_requested_object: uint
§prohibit_cond_pushdown: bool
§table_open_method: uint
§schema_table_state: Type
§is_table_read_plan: *mut IS_table_read_plan
§mdl_request: MDL_request
§partition_names: *mut List
§vers_conditions: vers_select_conds_t
§period_conditions: vers_select_conds_t
§for_insert_data: my_bool
§m_table_ref_type: Type
See comments for set_table_ref_id()
m_table_ref_version: ulonglong
See comments for set_table_ref_id()