summaryrefslogtreecommitdiff
path: root/sql/sql_lex.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_lex.h')
-rw-r--r--sql/sql_lex.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/sql/sql_lex.h b/sql/sql_lex.h
index 94575c074ef..b9f7d9cc2c8 100644
--- a/sql/sql_lex.h
+++ b/sql/sql_lex.h
@@ -869,7 +869,7 @@ public:
// Ensures that at least all members used during cleanup() are initialized.
st_select_lex_unit()
: union_result(NULL), table(NULL), result(NULL), fake_select_lex(NULL),
- cleaned(false), bag_set_op_optimized(false),
+ last_procedure(NULL), cleaned(false), bag_set_op_optimized(false),
have_except_all_or_intersect_all(false)
{
}
@@ -4773,6 +4773,19 @@ public:
bool resolve_references_to_cte(TABLE_LIST *tables,
TABLE_LIST **tables_last);
+ /**
+ Turn on the SELECT_DESCRIBE flag for every SELECT_LEX involved into
+ the statement being processed in case the statement is EXPLAIN UPDATE/DELETE.
+
+ @param lex current LEX
+ */
+
+ void promote_select_describe_flag_if_needed()
+ {
+ if (describe)
+ builtin_select.options |= SELECT_DESCRIBE;
+ }
+
};