summaryrefslogtreecommitdiff
path: root/sql/sql_lex.h
diff options
context:
space:
mode:
authorunknown <igor@olga.mysql.com>2007-06-04 03:03:15 -0700
committerunknown <igor@olga.mysql.com>2007-06-04 03:03:15 -0700
commite65eb0e44791b9ecc6457d5bec25e148eaee48e2 (patch)
treef15e7f2b5affe19975256465cb57da5944cf332c /sql/sql_lex.h
parentf4caa3025a437ca818fdef152321c3c02b2dabd6 (diff)
downloadmariadb-git-e65eb0e44791b9ecc6457d5bec25e148eaee48e2.tar.gz
Post-merge fix.
Diffstat (limited to 'sql/sql_lex.h')
-rw-r--r--sql/sql_lex.h37
1 files changed, 27 insertions, 10 deletions
diff --git a/sql/sql_lex.h b/sql/sql_lex.h
index 6d96dded088..f798fb535b3 100644
--- a/sql/sql_lex.h
+++ b/sql/sql_lex.h
@@ -830,6 +830,13 @@ inline bool st_select_lex_unit::is_union ()
#define ALTER_REMOVE_PARTITIONING (1L << 25)
#define ALTER_FOREIGN_KEY (1L << 26)
+enum enum_alter_table_change_level
+{
+ ALTER_TABLE_METADATA_ONLY= 0,
+ ALTER_TABLE_DATA_CHANGED= 1,
+ ALTER_TABLE_INDEX_CHANGED= 2
+};
+
/**
@brief Parsing data for CREATE or ALTER TABLE.
@@ -840,21 +847,28 @@ inline bool st_select_lex_unit::is_union ()
class Alter_info
{
public:
- List<Alter_drop> drop_list;
- List<Alter_column> alter_list;
- List<Key> key_list;
- List<create_field> create_list;
- uint flags;
- enum enum_enable_or_disable keys_onoff;
- enum tablespace_op_type tablespace_op;
- List<char> partition_names;
- uint no_parts;
+ List<Alter_drop> drop_list;
+ List<Alter_column> alter_list;
+ List<Key> key_list;
+ List<create_field> create_list;
+ uint flags;
+ enum enum_enable_or_disable keys_onoff;
+ enum tablespace_op_type tablespace_op;
+ List<char> partition_names;
+ uint no_parts;
+ enum_alter_table_change_level change_level;
+ create_field *datetime_field;
+ bool error_if_not_empty;
+
Alter_info() :
flags(0),
keys_onoff(LEAVE_AS_IS),
tablespace_op(NO_TABLESPACE_OP),
- no_parts(0)
+ no_parts(0),
+ change_level(ALTER_TABLE_METADATA_ONLY),
+ datetime_field(NULL),
+ error_if_not_empty(FALSE)
{}
void reset()
@@ -868,6 +882,9 @@ public:
tablespace_op= NO_TABLESPACE_OP;
no_parts= 0;
partition_names.empty();
+ change_level= ALTER_TABLE_METADATA_ONLY;
+ datetime_field= 0;
+ error_if_not_empty= FALSE;
}
/**
Construct a copy of this object to be used for mysql_alter_table