mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-16202 Latest changes made erroneously some keywords reserved in sql_mode=ORACLE
This commit is contained in:
@ -1379,3 +1379,67 @@ BEGIN NOT ATOMIC
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-16202 Latest changes made erroneously some keywords reserved in sql_mode=ORACLE
|
||||
--echo #
|
||||
|
||||
|
||||
DELIMITER $$;
|
||||
CREATE PROCEDURE p1(name VARCHAR(64), pattern TEXT)
|
||||
BEGIN
|
||||
DECLARE query TEXT DEFAULT REPLACE(pattern, 'name', name);
|
||||
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION
|
||||
BEGIN
|
||||
SHOW ERRORS;
|
||||
END;
|
||||
SELECT query AS '';
|
||||
EXECUTE IMMEDIATE query;
|
||||
END;
|
||||
$$
|
||||
|
||||
CREATE PROCEDURE p2(name VARCHAR(64))
|
||||
BEGIN
|
||||
CALL p1(name, 'BEGIN NOT ATOMIC DECLARE name INT; SET name=10; SELECT name; END');
|
||||
EXECUTE IMMEDIATE REPLACE('CREATE TABLE t1 (name INT)', 'name', name);
|
||||
CALL p1(name, 'SELECT name FROM t1');
|
||||
CALL p1(name, 'SELECT name ''alias'' FROM t1');
|
||||
CALL p1(name, 'SELECT name()');
|
||||
CALL p1(name, 'SELECT name.name()');
|
||||
CALL p1(name, 'SELECT name DATE FROM t1');
|
||||
CALL p1(name, 'SELECT name HISTORY FROM t1');
|
||||
CALL p1(name, 'SELECT name NEXT FROM t1');
|
||||
CALL p1(name, 'SELECT name PERIOD FROM t1');
|
||||
CALL p1(name, 'SELECT name PREVIOUS FROM t1');
|
||||
CALL p1(name, 'SELECT name SYSTEM FROM t1');
|
||||
CALL p1(name, 'SELECT name SYSTEM_TIME FROM t1');
|
||||
CALL p1(name, 'SELECT name TIME FROM t1');
|
||||
CALL p1(name, 'SELECT name TIMESTAMP FROM t1');
|
||||
CALL p1(name, 'SELECT name TRANSACTION FROM t1');
|
||||
CALL p1(name, 'SELECT name VALUE FROM t1');
|
||||
CALL p1(name, 'SELECT name VERSIONING FROM t1');
|
||||
CALL p1(name, 'SELECT name WITHOUT FROM t1');
|
||||
DROP TABLE t1;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
--disable_column_names
|
||||
CALL p2('date');
|
||||
CALL p2('history');
|
||||
CALL p2('next');
|
||||
CALL p2('period');
|
||||
CALL p2('previous');
|
||||
CALL p2('system');
|
||||
CALL p2('system_time');
|
||||
CALL p2('time');
|
||||
CALL p2('timestamp');
|
||||
CALL p2('transaction');
|
||||
CALL p2('value');
|
||||
CALL p2('versioning');
|
||||
CALL p2('without');
|
||||
--enable_column_names
|
||||
|
||||
DROP PROCEDURE p2;
|
||||
DROP PROCEDURE p1;
|
||||
|
Reference in New Issue
Block a user