summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <kostja@bodhi.(none)>2007-07-12 01:10:29 +0400
committerunknown <kostja@bodhi.(none)>2007-07-12 01:10:29 +0400
commit0bc3e69f92497c04cdd48e7936888183fd8a21d5 (patch)
treebd01b1baaf346bfc2b35440879a604aac91da7b0
parenta64be676a4cd799c7b7259d950df7040879a8889 (diff)
downloadmariadb-git-0bc3e69f92497c04cdd48e7936888183fd8a21d5.tar.gz
A fix and a test case for Bug#25859 ALTER DATABASE works w/o parameters.
Fix the parser to make the database options not optional. mysql-test/r/information_schema.result: Update results (Bug#25859) mysql-test/t/information_schema.test: Add a test case for Bug#25859 "ALTER DATABASE works w/o parameters" sql/sql_yacc.yy: Fix Bug#25859 ALTER DATABASE works w/o parameters - require parameters in the parser.
-rw-r--r--mysql-test/r/information_schema.result7
-rw-r--r--mysql-test/t/information_schema.test11
-rw-r--r--sql/sql_yacc.yy2
3 files changed, 16 insertions, 4 deletions
diff --git a/mysql-test/r/information_schema.result b/mysql-test/r/information_schema.result
index 4947fd7aecc..9d0e41b341a 100644
--- a/mysql-test/r/information_schema.result
+++ b/mysql-test/r/information_schema.result
@@ -1013,7 +1013,7 @@ c int(11) YES NULL
drop view v1;
drop table t1;
alter database information_schema;
-ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
drop database information_schema;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
drop table information_schema.tables;
@@ -1326,3 +1326,8 @@ v2 YES
delete from v1;
drop view v1,v2;
drop table t1,t2;
+alter database;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
+alter database test;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
+End of 5.0 tests.
diff --git a/mysql-test/t/information_schema.test b/mysql-test/t/information_schema.test
index 1d368ac6075..6cf4ad8f576 100644
--- a/mysql-test/t/information_schema.test
+++ b/mysql-test/t/information_schema.test
@@ -697,7 +697,7 @@ drop table t1;
#
# Bug #9846 Inappropriate error displayed while dropping table from 'INFORMATION_SCHEMA'
#
---error 1044
+--error ER_PARSE_ERROR
alter database information_schema;
--error 1044
drop database information_schema;
@@ -1038,4 +1038,11 @@ delete from v1;
drop view v1,v2;
drop table t1,t2;
-# End of 5.0 tests.
+#
+# Bug#25859 ALTER DATABASE works w/o parameters
+#
+--error ER_PARSE_ERROR
+alter database;
+--error ER_PARSE_ERROR
+alter database test;
+--echo End of 5.0 tests.
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 949f3ed4161..6c38c5984a3 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -3621,7 +3621,7 @@ alter:
Lex->create_info.default_table_charset= NULL;
Lex->create_info.used_fields= 0;
}
- opt_create_database_options
+ create_database_options
{
LEX *lex=Lex;
lex->sql_command=SQLCOM_ALTER_DB;