23#ifndef SQL_LOAD_INCLUDED
24#define SQL_LOAD_INCLUDED
52 String *opt_xml_rows_identified_by,
68 if (opt_fields_or_vars)
70 assert((opt_set_fields ==
nullptr) ^ (opt_set_exprs !=
nullptr));
72 assert(opt_set_fields->
size() == opt_set_exprs->
size());
79 if (opt_xml_rows_identified_by !=
nullptr)
123 THD *thd,
const char *db,
const char *
table_name,
bool is_concurrent,
124 enum enum_duplicates duplicates,
bool transactional_table,
int errocode);
This class encapsulates a data change operation.
Definition: sql_data_change.h:73
Base class that is used to represent any kind of expression in a relational query.
Definition: item.h:853
Definition: sql_list.h:433
Definition: sql_load.cc:119
Definition: sql_load.h:46
sql_exchange m_exchange
Definition: sql_load.h:92
const On_duplicate m_on_duplicate
Definition: sql_load.h:94
mem_root_deque< Item * > m_opt_set_fields
Definition: sql_load.h:98
enum_sql_command sql_command_code() const override
Return the command code for this statement.
Definition: sql_load.h:87
bool read_sep_field(THD *thd, COPY_INFO &info, Table_ref *table_list, READ_INFO &read_info, const String &enclosed, ulong skip_lines)
Read rows in delimiter-separated formats.
Definition: sql_load.cc:931
bool execute_inner(THD *thd, enum enum_duplicates handle_duplicates)
Execute LOAD DATA query.
Definition: sql_load.cc:203
const bool m_is_local_file
Definition: sql_load.h:93
bool read_fixed_length(THD *thd, COPY_INFO &info, Table_ref *table_list, READ_INFO &read_info, ulong skip_lines)
Read of rows of fixed size + optional garbage + optional newline.
Definition: sql_load.cc:767
mem_root_deque< Item * > m_opt_set_exprs
Definition: sql_load.h:99
bool read_xml_field(THD *thd, COPY_INFO &info, Table_ref *table_list, READ_INFO &read_info, ulong skip_lines)
Read rows in xml format.
Definition: sql_load.cc:1149
Sql_cmd_load_table(enum_filetype filetype, bool is_local_file, const LEX_STRING &filename, On_duplicate on_duplicate, Table_ident *table, List< String > *opt_partitions, const CHARSET_INFO *opt_charset, String *opt_xml_rows_identified_by, const Field_separators &field_separators, const Line_separators &line_separators, ulong skip_lines, mem_root_deque< Item * > *opt_fields_or_vars, mem_root_deque< Item * > *opt_set_fields, mem_root_deque< Item * > *opt_set_exprs, List< String > *opt_set_expr_strings)
Definition: sql_load.h:48
List< String > *const m_opt_partitions
Definition: sql_load.h:96
Table_ident *const m_table
Definition: sql_load.h:95
mem_root_deque< Item * > m_opt_fields_or_vars
Definition: sql_load.h:97
bool execute(THD *thd) override
Execute this SQL statement.
Definition: sql_load.cc:2126
List< String > *const m_opt_set_expr_strings
A list of strings is maintained to store the SET clause command user strings which are specified in l...
Definition: sql_load.h:107
bool write_execute_load_query_log_event(THD *thd, const char *db, const char *table_name, bool is_concurrent, enum enum_duplicates duplicates, bool transactional_table, int errocode)
Definition: sql_load.cc:696
Representation of an SQL command.
Definition: sql_cmd.h:81
Using this class is fraught with peril, and you need to be very careful when doing so.
Definition: sql_string.h:166
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:33
Definition: sql_lex.h:294
A (partial) implementation of std::deque allocating its blocks on a MEM_ROOT.
Definition: mem_root_deque.h:109
size_t size() const
Definition: mem_root_deque.h:458
Used to hold information about file and file structure in exchange via non-DB file (....
Definition: sql_exchange.h:78
Field_separators field
Definition: sql_exchange.h:80
const CHARSET_INFO * cs
Definition: sql_exchange.h:86
unsigned long skip_lines
Definition: sql_exchange.h:85
Line_separators line
Definition: sql_exchange.h:81
A better implementation of the UNIX ctype(3) library.
enum_sql_command
Definition: my_sqlcommand.h:45
@ SQLCOM_LOAD
Definition: my_sqlcommand.h:76
thread_local MEM_ROOT ** THR_MALLOC
Definition: mysqld.cc:1567
static char * enclosed
Definition: mysqldump.cc:142
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1063
static PFS_engine_table_share_proxy table
Definition: pfs.cc:60
const char * table_name
Definition: rules_table_service.cc:55
On_duplicate
Definition: parser_yystype.h:241
const char * filename
Definition: pfs_example_component_population.cc:66
Representation of an SQL command.
Contains classes representing SQL-data change statements.
enum_duplicates
Definition: sql_data_change.h:47
enum_filetype
Definition: sql_exchange.h:31
Our own string classes, used pervasively throughout the executor.
Definition: m_ctype.h:422
Helper for the sql_exchange class.
Definition: sql_exchange.h:52
void merge_field_separators(const Field_separators &s)
Definition: sql_exchange.h:62
Helper for the sql_exchange class.
Definition: sql_exchange.h:37
void merge_line_separators(const Line_separators &s)
Definition: sql_exchange.h:42
const String * line_term
Definition: sql_exchange.h:38
Definition: mysql_lex_string.h:34