summaryrefslogtreecommitdiff
path: root/sql/sql_cte.h
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.com>2020-02-05 12:43:17 +0400
committerAlexander Barkov <bar@mariadb.com>2020-02-08 21:35:35 +0400
commit77c6382312535991d26c85e7eb5492f9b3a59e92 (patch)
treeefcbf3c238aa8b67165031b5c7d9266c0082e7b4 /sql/sql_cte.h
parent06b0623adb71f2b7918f69ab68660ec45736ebb5 (diff)
downloadmariadb-git-77c6382312535991d26c85e7eb5492f9b3a59e92.tar.gz
MDEV-21689 Add Sql_cmd for GRANT/REVOKE statements
Rewriting GRANT/REVOKE grammar to use more bison stack and use Sql_cmd_ style 1. Removing a few members from LEX: - uint grant, grant_to_col, which_columns - List<LEX_COLUMN> columns - bool all_privileges 2. Adding classes Grand_object_name, Lex_grant_object_name 3. Adding classes Grand_privilege, Lex_grand_privilege 4. Adding struct Lex_column_list_privilege_st, class Lex_column_list_privilege 5. Rewriting the GRANT/REVOKE grammar to use new classes and pass them through bison stack (rather than directly access LEX members) 6. Adding classes Sql_cmd_grant* and Sql_cmd_revoke*, changing GRANT/REVOKE to use LEX::m_sql_cmd. 7. Adding the "sp_handler" grammar rule and removing some duplicate grammar for GRANT/REVOKE for different kinds of SP objects. 8. Adding a new rule comma_separated_ident_list, reusing it in: - with_column_list - colum_list_privilege
Diffstat (limited to 'sql/sql_cte.h')
-rw-r--r--sql/sql_cte.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/sql_cte.h b/sql/sql_cte.h
index 80d56644d7e..92aca5090f3 100644
--- a/sql/sql_cte.h
+++ b/sql/sql_cte.h
@@ -111,7 +111,7 @@ public:
inherited from the query that specified the table. Otherwise the list is
always empty.
*/
- List <LEX_CSTRING> column_list;
+ List <Lex_ident_sys> column_list;
/* The query that specifies the table introduced by this with element */
st_select_lex_unit *spec;
/*
@@ -163,7 +163,7 @@ public:
SQL_I_List<TABLE_LIST> derived_with_rec_ref;
With_element(LEX_CSTRING *name,
- List <LEX_CSTRING> list,
+ List <Lex_ident_sys> list,
st_select_lex_unit *unit)
: next(NULL), base_dep_map(0), derived_dep_map(0),
sq_dep_map(0), work_dep_map(0), mutually_recursive(0),