mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Changed database, tablename and alias to be LEX_CSTRING
This was done in, among other things: - thd->db and thd->db_length - TABLE_LIST tablename, db, alias and schema_name - Audit plugin database name - lex->db - All db and table names in Alter_table_ctx - st_select_lex db Other things: - Changed a lot of functions to take const LEX_CSTRING* as argument for db, table_name and alias. See init_one_table() as an example. - Changed some function arguments from LEX_CSTRING to const LEX_CSTRING - Changed some lists from LEX_STRING to LEX_CSTRING - threads_mysql.result changed because process list_db wasn't always correctly updated - New append_identifier() function that takes LEX_CSTRING* as arguments - Added new element tmp_buff to Alter_table_ctx to separate temp name handling from temporary space - Ensure we store the length after my_casedn_str() of table/db names - Removed not used version of rename_table_in_stat_tables() - Changed Natural_join_column::table_name and db_name() to never return NULL (used for print) - thd->get_db() now returns db as a printable string (thd->db.str or "")
This commit is contained in:
@ -206,7 +206,7 @@ struct LEX_TYPE
|
||||
#ifdef MYSQL_SERVER
|
||||
|
||||
extern const LEX_STRING empty_lex_str;
|
||||
extern const LEX_CSTRING empty_clex_str;
|
||||
extern MYSQL_PLUGIN_IMPORT const LEX_CSTRING empty_clex_str;
|
||||
extern const LEX_CSTRING star_clex_str;
|
||||
extern const LEX_CSTRING param_clex_str;
|
||||
|
||||
@ -837,7 +837,7 @@ class st_select_lex: public st_select_lex_node
|
||||
{
|
||||
public:
|
||||
Name_resolution_context context;
|
||||
const char *db;
|
||||
LEX_CSTRING db;
|
||||
Item *where, *having; /* WHERE & HAVING clauses */
|
||||
Item *prep_where; /* saved WHERE clause for prepared statement processing */
|
||||
Item *prep_having;/* saved HAVING clause for prepared statement processing */
|
||||
@ -2754,7 +2754,7 @@ public:
|
||||
|
||||
List<Item_func_set_user_var> set_var_list; // in-query assignment list
|
||||
List<Item_param> param_list;
|
||||
List<LEX_STRING> view_list; // view list (list of field names in view)
|
||||
List<LEX_CSTRING> view_list; // view list (list of field names in view)
|
||||
List<LEX_CSTRING> with_column_list; // list of column names in with_list_element
|
||||
List<LEX_STRING> *column_list; // list of column names (in ANALYZE)
|
||||
List<LEX_STRING> *index_list; // list of index names (in ANALYZE)
|
||||
@ -3124,7 +3124,7 @@ public:
|
||||
context_stack.pop();
|
||||
}
|
||||
|
||||
bool copy_db_to(const char **p_db, size_t *p_db_length) const;
|
||||
bool copy_db_to(LEX_CSTRING *to);
|
||||
|
||||
Name_resolution_context *current_context()
|
||||
{
|
||||
|
Reference in New Issue
Block a user