1#ifndef SQL_VIEW_INCLUDED
2#define SQL_VIEW_INCLUDED
49 bool *use_existing_view);
60 bool gen_unique_view_names);
78#define VIEW_ANY_ACL (SELECT_ACL | UPDATE_ACL | INSERT_ACL | DELETE_ACL)
Base class that is used to represent any kind of expression in a relational query.
Definition: item.h:930
Definition: sql_list.h:494
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:36
A (partial) implementation of std::deque allocating its blocks on a MEM_ROOT.
Definition: mem_root_deque.h:111
enum_view_create_mode
Definition: sql_lex.h:277
static bool column_names
Definition: mysql.cc:171
mode
Definition: file_handle.h:61
std::list< T, ut::allocator< T > > list
Specialization of list which uses ut_allocator.
Definition: ut0new.h:2880
bool check_duplicate_names(const Create_col_name_list *column_names, const mem_root_deque< Item * > &item_list, bool gen_unique_view_names)
When creating a derived table, check if duplicate column names are present, and possibly generate uni...
Definition: sql_view.cc:178
bool check_key_in_view(THD *thd, Table_ref *view, const Table_ref *table_ref)
check of key (primary or unique) presence in updatable view
Definition: sql_view.cc:1928
Mem_root_array_YY< LEX_CSTRING > Create_col_name_list
Definition: sql_view.h:57
bool insert_view_fields(mem_root_deque< Item * > *list, Table_ref *view)
Definition: sql_view.cc:2035
bool mysql_create_view(THD *thd, Table_ref *view, enum_view_create_mode mode)
Creating/altering VIEW procedure.
Definition: sql_view.cc:440
bool parse_view_definition(THD *thd, Table_ref *view_ref)
Parse a view definition.
Definition: sql_view.cc:1218
bool is_updatable_view(THD *thd, Table_ref *view)
Definition: sql_view.cc:781
bool create_view_precheck(THD *thd, Table_ref *tables, Table_ref *view, enum_view_create_mode mode)
CREATE VIEW privileges pre-check.
Definition: sql_view.cc:331
bool mysql_register_view(THD *thd, Table_ref *view, enum_view_create_mode mode, bool *use_existing_view)
Register view by writing its definition to the data-dictionary.
Definition: sql_view.cc:863
bool open_and_read_view(THD *thd, TABLE_SHARE *share, Table_ref *view_ref)
Open and read a view definition.
Definition: sql_view.cc:1103
void make_valid_column_names(LEX *lex)
Check if auto generated column names are conforming and possibly generate a conforming name for them ...
Definition: sql_view.cc:231
bool mysql_drop_view(THD *thd, Table_ref *view)
Drop view.
Definition: sql_view.cc:1762
The LEX object currently serves three different purposes:
Definition: sql_lex.h:3844
This structure is shared between different table objects.
Definition: table.h:704