diff options
Diffstat (limited to 'mysql-test/suite/sys_vars/t/sql_notes_basic.test')
-rw-r--r-- | mysql-test/suite/sys_vars/t/sql_notes_basic.test | 176 |
1 files changed, 176 insertions, 0 deletions
diff --git a/mysql-test/suite/sys_vars/t/sql_notes_basic.test b/mysql-test/suite/sys_vars/t/sql_notes_basic.test new file mode 100644 index 00000000000..984dca34e46 --- /dev/null +++ b/mysql-test/suite/sys_vars/t/sql_notes_basic.test @@ -0,0 +1,176 @@ +################### mysql-test\t\sql_notes_basic.test ######################### +# # +# Variable Name: sql_notes # +# Scope: SESSION # +# Access Type: Dynamic # +# Data Type: boolean # +# Default Value: # +# Valid Values: 0,1 # +# # +# # +# Creation Date: 2008-02-07 # +# Author: Rizwan # +# # +# Description: Test Cases of Dynamic System Variable sql_notes # +# that checks the behavior of this variable in the following ways# +# * Default Value # +# * Valid & Invalid values # +# * Scope & Access method # +# * Data Integrity # +# # +# Reference: http://dev.mysql.com/doc/refman/5.1/en/ # +# server-system-variables.html # +# # +############################################################################### + +--source include/load_sysvars.inc + +######################################################################## +# START OF sql_notes TESTS # +######################################################################## + + +############################################################################## +# Saving initial value of sql_notes in a temporary variable # +############################################################################## + +SET @session_start_value = @@session.sql_notes; +SELECT @session_start_value; + + +--echo '#--------------------FN_DYNVARS_161_01------------------------#' +###################################################################### +# Display the DEFAULT value of sql_notes # +###################################################################### + +SET @@session.sql_notes = 0; +SET @@session.sql_notes = DEFAULT; +SELECT @@session.sql_notes; + +SET @@session.sql_notes = 1; +SET @@session.sql_notes = DEFAULT; +SELECT @@session.sql_notes; + + +--echo '#---------------------FN_DYNVARS_161_02-------------------------#' +########################################################################### +# Check if sql_notes can be accessed with and without @@ sign # +########################################################################### + +SET sql_notes = 1; +SELECT @@sql_notes; + +--Error ER_UNKNOWN_TABLE +SELECT session.sql_notes; + +--Error ER_UNKNOWN_TABLE +SELECT local.sql_notes; + +SET session sql_notes = 0; +SELECT @@session.sql_notes; + + +--echo '#--------------------FN_DYNVARS_161_03------------------------#' +###################################################################### +# change the value of sql_notes to a valid value # +###################################################################### + +SET @@session.sql_notes = 0; +SELECT @@session.sql_notes; +SET @@session.sql_notes = 1; +SELECT @@session.sql_notes; + + +--echo '#--------------------FN_DYNVARS_161_04-------------------------#' +######################################################################### +# Change the value of sql_notes to invalid value # +######################################################################### + +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = -1; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = 2; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = "T"; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = "Y"; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = TRÜE; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = ÕN; + +SET @@session.sql_notes = OF; +SELECT @@session.sql_notes; + +--echo 'Bug# 34828: OF is taken as OFF and a value of 0 is set.' + +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = ÓFF; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = '¹'; +--Error ER_WRONG_VALUE_FOR_VAR +SET @@session.sql_notes = NO; + + +--echo '#-------------------FN_DYNVARS_161_05----------------------------#' +######################################################################### +# Test if accessing global sql_notes gives error # +######################################################################### + +--Error ER_LOCAL_VARIABLE +SET @@global.sql_notes = 0; + +--Error ER_INCORRECT_GLOBAL_LOCAL_VAR +SELECT @@global.sql_notes; + +--echo '#----------------------FN_DYNVARS_161_06------------------------#' +######################################################################### +# Check if the value in GLOBAL Table contains variable value # +######################################################################### + +SELECT count(VARIABLE_VALUE) FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='sql_notes'; + +--echo '#----------------------FN_DYNVARS_161_07------------------------#' +######################################################################### +# Check if the value in GLOBAL Table matches value in variable # +######################################################################### + +SELECT @@session.sql_notes = VARIABLE_VALUE +FROM INFORMATION_SCHEMA.SESSION_VARIABLES +WHERE VARIABLE_NAME='sql_notes'; +SELECT @@session.sql_notes; +SELECT VARIABLE_VALUE +FROM INFORMATION_SCHEMA.SESSION_VARIABLES +WHERE VARIABLE_NAME='sql_notes'; + +--echo '#---------------------FN_DYNVARS_161_08-------------------------#' +################################################################### +# Check if ON and OFF values can be used on variable # +################################################################### + +SET @@session.sql_notes = OFF; +SELECT @@session.sql_notes; +SET @@session.sql_notes = ON; +SELECT @@session.sql_notes; + +--echo '#---------------------FN_DYNVARS_161_09----------------------#' +################################################################### +# Check if TRUE and FALSE values can be used on variable # +################################################################### + +SET @@session.sql_notes = TRUE; +SELECT @@session.sql_notes; +SET @@session.sql_notes = FALSE; +SELECT @@session.sql_notes; + +############################## +# Restore initial value # +############################## + +SET @@session.sql_notes = @session_start_value; +SELECT @@session.sql_notes; + +############################################################# +# END OF sql_notes TESTS # +############################################################# + |