1#ifndef SQL_TMP_TABLE_INCLUDED
2#define SQL_TMP_TABLE_INCLUDED
57 bool distinct,
bool save_sum_fields,
59 const char *table_alias);
62 bool is_virtual =
true,
64 const char *alias =
nullptr);
66 bool insert_last_record,
bool ignore_last_dup,
73 bool force_disk_table =
false,
74 bool schema_table =
false);
78 Field **default_field,
bool group,
bool modify_item,
79 bool table_cant_handle_bit_fields,
80 bool make_copy_field);
90 uint *max_key_part_length,
Create_field is a description a field/column that may or may not exists in a table.
Definition: create_field.h:51
Base class that is used to represent any kind of expression in a relational query.
Definition: item.h:853
Type
Definition: item.h:889
Definition: sql_list.h:434
A typesafe replacement for DYNAMIC_ARRAY.
Definition: mem_root_array.h:426
Definition: sql_executor.h:104
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:34
Object containing parameters used when creating and using temporary tables.
Definition: temp_table_param.h:95
A (partial) implementation of std::deque allocating its blocks on a MEM_ROOT.
Definition: mem_root_deque.h:110
This file includes constants used by all storage engines.
my_off_t ha_rows
Definition: my_base.h:1140
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:56
unsigned char uchar
Definition: my_inttypes.h:52
bool length(const dd::Spatial_reference_system *srs, const Geometry *g1, double *length, bool *null) noexcept
Computes the length of linestrings and multilinestrings.
Definition: length.cc:76
bool is_duplicate(Country_record *record, int skip_index)
Check for duplicate value of Primary/Unique Key column(s).
Definition: pfs_example_country.cc:51
required string type
Definition: replication_group_member_actions.proto:34
bool setup_tmp_table_handler(THD *thd, TABLE *table, ulonglong select_options, bool force_disk_table=false, bool schema_table=false)
Helper function to create_tmp_table_* family for setting up table's SE.
Definition: sql_tmp_table.cc:2095
Field * create_tmp_field(THD *thd, TABLE *table, Item *item, Item::Type type, Func_ptr_array *copy_func, Field **from_field, Field **default_field, bool group, bool modify_item, bool table_cant_handle_bit_fields, bool make_copy_field)
Create field for temporary table.
Definition: sql_tmp_table.cc:360
void free_tmp_table(TABLE *table)
Free temporary table.
Definition: sql_tmp_table.cc:2480
enum_internal_tmp_mem_storage_engine
Definition: sql_tmp_table.h:50
@ TMP_TABLE_TEMPTABLE
Definition: sql_tmp_table.h:52
@ TMP_TABLE_MEMORY
Definition: sql_tmp_table.h:51
Field * create_tmp_field_from_field(THD *thd, const Field *org_field, const char *name, TABLE *table, Item_field *item)
Lifecycle management of internal temporary tables.
Definition: sql_tmp_table.cc:188
TABLE * create_tmp_table(THD *thd, Temp_table_param *param, const mem_root_deque< Item * > &fields, ORDER *group, bool distinct, bool save_sum_fields, ulonglong select_options, ha_rows rows_limit, const char *table_alias)
Definition: sql_tmp_table.cc:879
void close_tmp_table(TABLE *table)
Close a temporary table at end of preparation or execution.
Definition: sql_tmp_table.cc:2431
TABLE * create_tmp_table_from_fields(THD *thd, List< Create_field > &field_list, bool is_virtual=true, ulonglong select_options=0, const char *alias=nullptr)
Create an, optionally reduced, TABLE object with properly set up Field list from a list of field defi...
Definition: sql_tmp_table.cc:1909
bool reposition_innodb_cursor(TABLE *table, ha_rows row_num)
Helper function for create_ondisk_from_heap().
Definition: sql_tmp_table.cc:2911
void encode_innodb_position(uchar *rowid_bytes, uint length, ha_rows row_num)
Encode an InnoDB PK in 6 bytes, high-byte first; like InnoDB's dict_sys_write_row_id() does.
Definition: sql_tmp_table.cc:2889
bool open_tmp_table(TABLE *table)
Definition: sql_tmp_table.cc:2220
void get_max_key_and_part_length(uint *max_key_length, uint *max_key_part_length, uint *max_key_parts)
Get the minimum of max_key_length and max_key_part_length between HEAP engine and internal_tmp_disk_s...
Definition: sql_tmp_table.cc:637
TABLE * create_duplicate_weedout_tmp_table(THD *thd, uint uniq_tuple_length_arg, SJ_TMP_TABLE *sjtbl)
Create a temporary table to weed out duplicate rowid combinations.
Definition: sql_tmp_table.cc:1689
bool create_ondisk_from_heap(THD *thd, TABLE *table, int error, bool insert_last_record, bool ignore_last_dup, bool *is_duplicate)
If a MEMORY table gets full, create a disk-based table and copy all rows to this.
Definition: sql_tmp_table.cc:2577
void init_cache_tmp_engine_properties()
Initialize the storage engine properties for the alternative temporary table storage engines.
Definition: sql_tmp_table.cc:619
bool instantiate_tmp_table(THD *thd, TABLE *table)
Instantiates temporary table.
Definition: sql_tmp_table.cc:2361
case opt name
Definition: sslopt-case.h:33
unsigned int uint
Definition: uca9-dump.cc:75