mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 20:12:31 +01:00
188 lines
4.8 KiB
Text
188 lines
4.8 KiB
Text
############# mysql-test\t\time_zone_func.test #############################
|
|
# #
|
|
# Variable Name: time_zone #
|
|
# Scope: GLOBAL, SESSION #
|
|
# Access Type: Dynamic #
|
|
# Data Type: STRING #
|
|
# Default Value: TRUE 1, FALSE 0 #
|
|
# Values: FALSE 0 #
|
|
# #
|
|
# #
|
|
# Creation Date: 2008-02-25 #
|
|
# Author: Sharique Abdullah #
|
|
# #
|
|
# Description: Test Cases of Dynamic System Variable "time_zone" #
|
|
# that checks behavior of this variable in the following ways #
|
|
# * Functionality based on different values #
|
|
# #
|
|
# Reference: http://dev.mysql.com/doc/refman/5.1/en/set-option.html #
|
|
# #
|
|
############################################################################
|
|
|
|
--echo ** Setup **
|
|
--echo
|
|
#
|
|
# Setup
|
|
#
|
|
|
|
SET @session_time_zone = @@SESSION.time_zone;
|
|
SET @global_time_zone = @@GLOBAL.time_zone;
|
|
|
|
CREATE TABLE t1 (a datetime);
|
|
CREATE TABLE t2 (a timestamp);
|
|
|
|
--echo '#-----------------------------FN_DYNVARS_177_01--------------------#'
|
|
#
|
|
# Value DEFAULT
|
|
#
|
|
SET @@time_zone = DEFAULT;
|
|
|
|
SELECT @@time_zone;
|
|
--echo SYSTEM Expected
|
|
|
|
--echo '#-----------------------------FN_DYNVARS_177_02-------------------#'
|
|
#
|
|
# Testing difference values
|
|
#
|
|
|
|
SET @@time_zone = '+05:00';
|
|
|
|
SELECT @@time_zone;
|
|
--echo +05:00 Expected
|
|
|
|
SET @@time_zone = '-01:00';
|
|
|
|
SELECT @@time_zone;
|
|
--echo -01:00 Expected
|
|
|
|
SET @@time_zone = '+00:00';
|
|
|
|
SELECT @@time_zone;
|
|
--echo +00:00 Expected
|
|
|
|
SET @@time_zone = '-00:00';
|
|
|
|
SELECT @@time_zone;
|
|
--echo -00:00 Expected
|
|
|
|
--echo '#-----------------------------FN_DYNVARS_177_03----------------#'
|
|
#
|
|
# Setting possible values
|
|
#
|
|
|
|
SET @@time_zone = '+00:00';
|
|
|
|
INSERT INTO t1 VALUES('2008-03-05 16:28:00');
|
|
INSERT INTO t1 VALUES('1970-01-01 00:05:00'),('1970-01-01 01:05:00');
|
|
INSERT INTO t2 VALUES(20080305162800);
|
|
INSERT INTO t2 VALUES(19730101235900);
|
|
INSERT INTO t2 VALUES('1970-01-01 00:05:00'),('1970-01-01 01:05:00');
|
|
INSERT INTO t2 VALUES(19700101000500);
|
|
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
SET @@time_zone = 'MET';
|
|
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
SET @@time_zone = '+05:00';
|
|
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
SET @@time_zone = '+06:00';
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
SET @@time_zone = '+01:00';
|
|
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
SET @@time_zone = '+02:00';
|
|
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
SET @@time_zone = '+00:00';
|
|
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
SET @@time_zone = '+06:00';
|
|
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t1;
|
|
SELECT a,UNIX_TIMESTAMP(a) FROM t2;
|
|
|
|
--echo Potential Feature: upon recovery of timezone,
|
|
--echo the original value of the timestamp should be recovered.
|
|
|
|
--echo '#-----------------------------FN_DYNVARS_177_04--------------------#'
|
|
#
|
|
# Testing invalid values
|
|
#
|
|
--error ER_UNKNOWN_TIME_ZONE
|
|
SET @@time_zone = '6';
|
|
|
|
|
|
--echo '#-----------------------------FN_DYNVARS_177_05---------------#'
|
|
#
|
|
# Session data integrity check & GLOBAL Value check
|
|
#
|
|
|
|
SET GLOBAL time_zone = 'SYSTEM';
|
|
|
|
--echo ** Connecting con_int1 using root **
|
|
connect (con_int1,localhost,root,,);
|
|
|
|
--echo ** Connection con_int1 **
|
|
connection con_int1;
|
|
SELECT @@SESSION.time_zone;
|
|
--echo SYSTEM Expected
|
|
|
|
SET SESSION time_zone = '+05:00';
|
|
|
|
--echo ** Connecting con_int2 using root **
|
|
connect (con_int2,localhost,root,,);
|
|
|
|
--echo ** Connection con_int2 **
|
|
connection con_int2;
|
|
SELECT @@SESSION.time_zone;
|
|
--echo SYSTEM Expected
|
|
|
|
SET SESSION time_zone = '-10:00';
|
|
|
|
--echo ** Connection con_int2 **
|
|
connection con_int2;
|
|
SELECT @@SESSION.time_zone;
|
|
--echo -10:00 Expected
|
|
|
|
--echo ** Connection con_int1 **
|
|
connection con_int1;
|
|
SELECT @@SESSION.time_zone;
|
|
--echo +05:00 Expected
|
|
|
|
|
|
SELECT @@GLOBAL.time_zone;
|
|
--echo SYSTEM Expected
|
|
|
|
--echo ** Connection default **
|
|
connection default;
|
|
|
|
--echo Disconnecting Connections con_int1, con_int2
|
|
disconnect con_int1;
|
|
disconnect con_int2;
|
|
|
|
|
|
#
|
|
# Cleanup
|
|
#
|
|
|
|
|
|
SET @@SESSION.time_zone = @session_time_zone;
|
|
SET @@GLOBAL.time_zone = @global_time_zone;
|
|
|
|
DROP TABLE t1;
|
|
DROP TABLE t2;
|