summaryrefslogtreecommitdiff
path: root/sql/sql_tvc.h
diff options
context:
space:
mode:
authorGalina Shalygina <galashalygina@gmail.com>2017-06-29 15:32:17 +0300
committerGalina Shalygina <galashalygina@gmail.com>2017-06-29 15:36:07 +0300
commit615da8f70bd61aa0918c08a256638d90d425fe0e (patch)
tree16d6d48e705db076d42f56e5c8ecd10f00dde60d /sql/sql_tvc.h
parent0fe7d8a2a221196d977e5efe3f3dedb22806bb53 (diff)
downloadmariadb-git-615da8f70bd61aa0918c08a256638d90d425fe0e.tar.gz
New structure Table Value Constructor added in grammar.
TVC can be used in UNION-statement, in view and in subquery. Files where TVC is defined and its methods are stored added. Methods exec and prepare for TVC added. Tests for TVC added.
Diffstat (limited to 'sql/sql_tvc.h')
-rw-r--r--sql/sql_tvc.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/sql/sql_tvc.h b/sql/sql_tvc.h
new file mode 100644
index 00000000000..e5c3477351c
--- /dev/null
+++ b/sql/sql_tvc.h
@@ -0,0 +1,27 @@
+#ifndef SQL_TVC_INCLUDED
+#define SQL_TVC_INCLUDED
+#include "sql_type.h"
+#include "item.h"
+
+typedef List<Item> List_item;
+class select_result;
+
+/**
+ @class table_value_constr
+ @brief Definition of a Table Value Construction(TVC)
+
+ It contains a list of lists of values that this TVC contains.
+*/
+
+class table_value_constr : public Sql_alloc
+{
+public:
+ List<List_item> lists_of_values;
+ select_result *result;
+
+ bool prepare(THD *thd_arg, SELECT_LEX *sl,
+ select_result *tmp_result);
+ bool exec();
+};
+
+#endif /* SQL_TVC_INCLUDED */ \ No newline at end of file