mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Merge bk@192.168.21.1:mysql-5.1
into mysql.com:/home/hf/work/mrg/mysql-5.1-opt
This commit is contained in:
@ -1188,9 +1188,29 @@ SQL_SELECT *make_select(TABLE *head, table_map const_tables,
|
||||
table_map read_tables, COND *conds,
|
||||
bool allow_null_cond, int *error);
|
||||
extern Item **not_found_item;
|
||||
|
||||
/*
|
||||
This enumeration type is used only by the function find_item_in_list
|
||||
to return the info on how an item has been resolved against a list
|
||||
of possibly aliased items.
|
||||
The item can be resolved:
|
||||
- against an alias name of the list's element (RESOLVED_AGAINST_ALIAS)
|
||||
- against non-aliased field name of the list (RESOLVED_WITH_NO_ALIAS)
|
||||
- against an aliased field name of the list (RESOLVED_BEHIND_ALIAS)
|
||||
- ignoring the alias name in cases when SQL requires to ignore aliases
|
||||
(e.g. when the resolved field reference contains a table name or
|
||||
when the resolved item is an expression) (RESOLVED_IGNORING_ALIAS)
|
||||
*/
|
||||
enum enum_resolution_type {
|
||||
NOT_RESOLVED=0,
|
||||
RESOLVED_IGNORING_ALIAS,
|
||||
RESOLVED_BEHIND_ALIAS,
|
||||
RESOLVED_WITH_NO_ALIAS,
|
||||
RESOLVED_AGAINST_ALIAS
|
||||
};
|
||||
Item ** find_item_in_list(Item *item, List<Item> &items, uint *counter,
|
||||
find_item_error_report_type report_error,
|
||||
bool *unaliased);
|
||||
enum_resolution_type *resolution);
|
||||
bool get_key_map_from_key_list(key_map *map, TABLE *table,
|
||||
List<String> *index_list);
|
||||
bool insert_fields(THD *thd, Name_resolution_context *context,
|
||||
@ -1248,7 +1268,8 @@ TABLE_LIST *find_table_in_list(TABLE_LIST *table,
|
||||
st_table_list *TABLE_LIST::*link,
|
||||
const char *db_name,
|
||||
const char *table_name);
|
||||
TABLE_LIST *unique_table(THD *thd, TABLE_LIST *table, TABLE_LIST *table_list);
|
||||
TABLE_LIST *unique_table(THD *thd, TABLE_LIST *table, TABLE_LIST *table_list,
|
||||
bool check_alias);
|
||||
TABLE *find_temporary_table(THD *thd, const char *db, const char *table_name);
|
||||
TABLE *find_temporary_table(THD *thd, TABLE_LIST *table_list);
|
||||
bool close_temporary_table(THD *thd, TABLE_LIST *table_list);
|
||||
|
Reference in New Issue
Block a user