summaryrefslogtreecommitdiff
path: root/sql/sql_lex.h
diff options
context:
space:
mode:
authorbell@sanja.is.com.ua <>2003-10-16 15:54:47 +0300
committerbell@sanja.is.com.ua <>2003-10-16 15:54:47 +0300
commita7bdd19707cd0077560ff50160eb830a0266b43d (patch)
treedff4a909ef6eed167999fe596d481efd2e38e613 /sql/sql_lex.h
parentddf4d1e5292f226f266a486b84c70e01ec1f93fe (diff)
downloadmariadb-git-a7bdd19707cd0077560ff50160eb830a0266b43d.tar.gz
subqueries made printable
new EXPLAIN parameter to show real query as it was interpreted (SCRUM) (WL#1274)
Diffstat (limited to 'sql/sql_lex.h')
-rw-r--r--sql/sql_lex.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/sql/sql_lex.h b/sql/sql_lex.h
index 8ce028020c2..2e62d65fd20 100644
--- a/sql/sql_lex.h
+++ b/sql/sql_lex.h
@@ -79,6 +79,10 @@ enum enum_sql_command {
SQLCOM_END
};
+// describe/explain types
+#define DESCRIBE_NORMAL 1
+#define DESCRIBE_EXTENDED 2
+
typedef List<Item> List_item;
typedef struct st_lex_master_info
@@ -321,7 +325,9 @@ public:
int prepare(THD *thd, select_result *result, bool tables_and_fields_initied);
int exec();
int cleanup();
-
+
+ void print(String *str);
+
friend void mysql_init_query(THD *thd);
friend int subselect_union_engine::exec();
private:
@@ -462,6 +468,9 @@ public:
init_select();
}
bool setup_ref_array(THD *thd, uint order_group_num);
+ void print(THD *thd, String *str);
+ static void print_order(String *str, ORDER *order);
+ void print_limit(THD *thd, String *str);
};
typedef class st_select_lex SELECT_LEX;
@@ -535,9 +544,10 @@ typedef struct st_lex
uint fk_delete_opt, fk_update_opt, fk_match_option;
uint param_count;
uint slave_thd_opt;
+ uint8 describe;
bool drop_primary, drop_if_exists, drop_temporary, local_file;
bool in_comment, ignore_space, verbose, simple_alter, no_write_to_binlog;
- bool derived_tables, describe;
+ bool derived_tables;
bool safe_to_cache_query;
st_lex() {}
inline void uncacheable()