summaryrefslogtreecommitdiff
path: root/sql/sql_table.cc
diff options
context:
space:
mode:
authormonty@tramp.mysql.fi <>2001-10-29 10:49:35 +0200
committermonty@tramp.mysql.fi <>2001-10-29 10:49:35 +0200
commitabb7df2de126c96f6c8e7525f83a9fb1ac97f208 (patch)
treefc5532fe3c9a3bc29a1e71b5db41e1b702f4980a /sql/sql_table.cc
parent00046f8ed1b72b73ad1694616fdd3bbd4418fd2e (diff)
downloadmariadb-git-abb7df2de126c96f6c8e7525f83a9fb1ac97f208.tar.gz
Fixed error message when opening a not-MyISAM file.
Extended MODIFY and CHANGE in ALTER TABLE to accept the AFTER keyword. Extended MyISAM to handle records > 16M.
Diffstat (limited to 'sql/sql_table.cc')
-rw-r--r--sql/sql_table.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/sql/sql_table.cc b/sql/sql_table.cc
index d76c6bbd627..2a1be2e525c 100644
--- a/sql/sql_table.cc
+++ b/sql/sql_table.cc
@@ -1273,8 +1273,11 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
def->field=field;
if (def->sql_type == FIELD_TYPE_TIMESTAMP)
use_timestamp=1;
- create_list.push_back(def);
- def_it.remove();
+ if (!def->after)
+ {
+ create_list.push_back(def);
+ def_it.remove();
+ }
}
else
{ // Use old field value
@@ -1305,7 +1308,7 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
List_iterator<create_field> find_it(create_list);
while ((def=def_it++)) // Add new columns
{
- if (def->change)
+ if (def->change && ! def->field)
{
my_error(ER_BAD_FIELD_ERROR,MYF(0),def->change,table_name);
DBUG_RETURN(-1);