CREATE TABLE valid_values (value varchar(255)); INSERT INTO valid_values VALUES(0); INSERT INTO valid_values VALUES(1); INSERT INTO valid_values VALUES(2); CREATE TABLE invalid_values (value varchar(255)); INSERT INTO invalid_values VALUES('\'a\''); INSERT INTO invalid_values VALUES('\'b\''); SET @start_global_value = @@global.XENGINE_BOTTOMMOST_LEVEL; SELECT @start_global_value; @start_global_value 2 '# Setting to valid values in global scope#' "Trying to set variable @@global.XENGINE_BOTTOMMOST_LEVEL to 0" SET @@global.XENGINE_BOTTOMMOST_LEVEL = 0; SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 0 "Setting the global scope variable back to default" SET @@global.XENGINE_BOTTOMMOST_LEVEL = DEFAULT; SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 2 "Trying to set variable @@global.XENGINE_BOTTOMMOST_LEVEL to 1" SET @@global.XENGINE_BOTTOMMOST_LEVEL = 1; SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 1 "Setting the global scope variable back to default" SET @@global.XENGINE_BOTTOMMOST_LEVEL = DEFAULT; SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 2 "Trying to set variable @@global.XENGINE_BOTTOMMOST_LEVEL to 2" SET @@global.XENGINE_BOTTOMMOST_LEVEL = 2; SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 2 "Setting the global scope variable back to default" SET @@global.XENGINE_BOTTOMMOST_LEVEL = DEFAULT; SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 2 "Trying to set variable @@session.XENGINE_BOTTOMMOST_LEVEL to 444. It should fail because it is not session." SET @@session.XENGINE_BOTTOMMOST_LEVEL = 444; ERROR HY000: Variable 'xengine_bottommost_level' is a GLOBAL variable and should be set with SET GLOBAL '# Testing with invalid values in global scope #' "Trying to set variable @@global.XENGINE_BOTTOMMOST_LEVEL to 'a'" SET @@global.XENGINE_BOTTOMMOST_LEVEL = 'a'; Got one of the listed errors SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 2 "Trying to set variable @@global.XENGINE_BOTTOMMOST_LEVEL to 'b'" SET @@global.XENGINE_BOTTOMMOST_LEVEL = 'b'; Got one of the listed errors SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 2 SET @@global.XENGINE_BOTTOMMOST_LEVEL = @start_global_value; SELECT @@global.XENGINE_BOTTOMMOST_LEVEL; @@global.XENGINE_BOTTOMMOST_LEVEL 2 DROP TABLE valid_values; DROP TABLE invalid_values;