mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-17693 Shift/reduce conflicts for NAMES,ROLE,PASSWORD in the option_value_no_option_type grammar
This commit is contained in:
@ -546,3 +546,66 @@ BEGIN
|
||||
NULL;
|
||||
END;
|
||||
/
|
||||
#
|
||||
# MDEV-17693 Shift/reduce conflicts for NAMES,ROLE,PASSWORD in the option_value_no_option_type grammar
|
||||
#
|
||||
CREATE TABLE names (names INT);
|
||||
SELECT names FROM names AS names;
|
||||
names
|
||||
DROP TABLE names;
|
||||
CREATE TABLE password (password INT);
|
||||
SELECT password FROM password AS password;
|
||||
password
|
||||
DROP TABLE password;
|
||||
CREATE TABLE role (role INT);
|
||||
SELECT role FROM role AS role;
|
||||
role
|
||||
DROP TABLE role;
|
||||
DECLARE
|
||||
names VARCHAR(32) DEFAULT '[names]';
|
||||
password VARCHAR(32) DEFAULT '[password]';
|
||||
role VARCHAR(32) DEFAULT '[role]';
|
||||
BEGIN
|
||||
<<names>>
|
||||
SELECT names;
|
||||
<<password>>
|
||||
SELECT password;
|
||||
<<role>>
|
||||
SELECT role;
|
||||
END;
|
||||
$$
|
||||
names
|
||||
[names]
|
||||
password
|
||||
[password]
|
||||
role
|
||||
[role]
|
||||
DECLARE
|
||||
names VARCHAR(32);
|
||||
BEGIN
|
||||
SET names='[names]';
|
||||
END;
|
||||
$$
|
||||
ERROR 42000: Variable 'names' must be quoted with `...`, or renamed
|
||||
DECLARE
|
||||
password VARCHAR(32);
|
||||
BEGIN
|
||||
SET password='[password]';
|
||||
END;
|
||||
$$
|
||||
ERROR 42000: Variable 'password' must be quoted with `...`, or renamed
|
||||
DECLARE
|
||||
role VARCHAR(32);
|
||||
BEGIN
|
||||
SET role='[role]';
|
||||
END;
|
||||
$$
|
||||
SELECT @@GLOBAL.names;
|
||||
ERROR HY000: Unknown system variable 'names'
|
||||
SELECT @@GLOBAL.password;
|
||||
ERROR HY000: Unknown system variable 'password'
|
||||
SELECT @@GLOBAL.role;
|
||||
ERROR HY000: Unknown system variable 'role'
|
||||
#
|
||||
# End of 10.3 tests
|
||||
#
|
||||
|
@ -339,3 +339,76 @@ END;
|
||||
/
|
||||
DELIMITER ;/
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-17693 Shift/reduce conflicts for NAMES,ROLE,PASSWORD in the option_value_no_option_type grammar
|
||||
--echo #
|
||||
|
||||
CREATE TABLE names (names INT);
|
||||
SELECT names FROM names AS names;
|
||||
DROP TABLE names;
|
||||
|
||||
CREATE TABLE password (password INT);
|
||||
SELECT password FROM password AS password;
|
||||
DROP TABLE password;
|
||||
|
||||
CREATE TABLE role (role INT);
|
||||
SELECT role FROM role AS role;
|
||||
DROP TABLE role;
|
||||
|
||||
DELIMITER $$;
|
||||
DECLARE
|
||||
names VARCHAR(32) DEFAULT '[names]';
|
||||
password VARCHAR(32) DEFAULT '[password]';
|
||||
role VARCHAR(32) DEFAULT '[role]';
|
||||
BEGIN
|
||||
<<names>>
|
||||
SELECT names;
|
||||
<<password>>
|
||||
SELECT password;
|
||||
<<role>>
|
||||
SELECT role;
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
DELIMITER $$;
|
||||
--error ER_SP_BAD_VAR_SHADOW
|
||||
DECLARE
|
||||
names VARCHAR(32);
|
||||
BEGIN
|
||||
SET names='[names]';
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
DELIMITER $$;
|
||||
--error ER_SP_BAD_VAR_SHADOW
|
||||
DECLARE
|
||||
password VARCHAR(32);
|
||||
BEGIN
|
||||
SET password='[password]';
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
DELIMITER $$;
|
||||
DECLARE
|
||||
role VARCHAR(32);
|
||||
BEGIN
|
||||
SET role='[role]';
|
||||
END;
|
||||
$$
|
||||
DELIMITER ;$$
|
||||
|
||||
--error ER_UNKNOWN_SYSTEM_VARIABLE
|
||||
SELECT @@GLOBAL.names;
|
||||
--error ER_UNKNOWN_SYSTEM_VARIABLE
|
||||
SELECT @@GLOBAL.password;
|
||||
--error ER_UNKNOWN_SYSTEM_VARIABLE
|
||||
SELECT @@GLOBAL.role;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.3 tests
|
||||
--echo #
|
||||
|
Reference in New Issue
Block a user