mariadb/mysql-test/t/comments.test
Michael Widenius 55829ac13d Support 6 digit version numbers in executable comment syntax.
This is needed to be able to ignore executable comments from version 10.0.
2014-02-11 21:43:08 +02:00

79 lines
1.6 KiB
Text

#
# Testing of comments
#
select 1+2/*hello*/+3;
select 1 /* long
multi line comment */;
--error 1065
;
select 1 /*!32301 +1 */;
select 1 /*!52301 +1 */;
select 1--1;
# Note that the following returns 4 while it should return 2
# This is because the mysqld server doesn't parse -- comments
select 1 --2
+1;
select 1 # The rest of the row will be ignored
;
/* line with only comment */;
# End of 4.1 tests
#
# Testing of MariaDB executable comments
#
select 1 /*M! +1 */;
select 1 /*M!50000 +1 */;
select 1 /*M!50300 +1 */;
select 2 /*M!99999 +1 */;
select 2 /*M!100000 +1 */;
--error ER_PARSE_ERROR
select 2 /*M!0000 +1 */;
#
# Bug#25411 (trigger code truncated)
#
--error ER_PARSE_ERROR
select 1/*!2*/;
--error ER_PARSE_ERROR
select 1/*!0000002*/;
select 1/*!999992*/;
select 1 + /*!00000 2 */ + 3 /*!99999 noise*/ + 4;
#
# Bug#28779 (mysql_query() allows execution of statements with unbalanced
# comments)
#
--disable_warnings
drop table if exists table_28779;
--enable_warnings
create table table_28779 (a int);
--error 1064
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*' AND b = 'bar';";
--error 1064
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*' AND b = 'bar';*";
--error 1064
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*! AND 2=2;";
--error 1064
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*! AND 2=2;*";
--error 1064
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*!98765' AND b = 'bar';";
--error 1064
prepare bar from "DELETE FROM table_28779 WHERE a = 7 OR 1=1/*!98765' AND b = 'bar';*";
drop table table_28779;