1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
include/master-slave.inc
[connection master]
set @my_time_zone= @@global.time_zone;
set timestamp=100000000;
create table t1 (t timestamp, n int not null auto_increment, PRIMARY KEY(n));
create table t2 (t char(32), n int not null auto_increment, PRIMARY KEY(n));
select @@time_zone;
@@time_zone
Japan
select @@time_zone;
@@time_zone
Europe/Moscow
insert into t1 values ('20050101000000', NULL), ('20050611093902',NULL);
insert into t1 values ('20040101000000',NULL), ('20040611093902',NULL);
SELECT * FROM t1 ORDER BY n;
t n
2005-01-01 00:00:00 1
2005-06-11 09:39:02 2
2004-01-01 00:00:00 3
2004-06-11 09:39:02 4
SELECT * FROM t1 ORDER BY n;
t n
2005-01-01 06:00:00 1
2005-06-11 14:39:02 2
2004-01-01 06:00:00 3
2004-06-11 14:39:02 4
delete from t1;
set time_zone='Europe/Moscow';
insert into t1 values ('20040101000000',NULL), ('20040611093902',NULL);
SELECT * FROM t1 ORDER BY n;
t n
2004-01-01 00:00:00 5
2004-06-11 09:39:02 6
set time_zone='Europe/Moscow';
SELECT * FROM t1 ORDER BY n;
t n
2004-01-01 00:00:00 5
2004-06-11 09:39:02 6
delete from t1;
set time_zone='UTC';
load data infile '../../std_data/rpl_timezone2.dat' into table t1;
Warnings:
Warning 1265 Data truncated for column 't' at row 1
Warning 1261 Row 1 doesn't contain data for all columns
Warning 1265 Data truncated for column 't' at row 2
Warning 1261 Row 2 doesn't contain data for all columns
SELECT * FROM t1 ORDER BY n;
t n
0000-00-00 00:00:00 7
0000-00-00 00:00:00 8
set time_zone='UTC';
SELECT * FROM t1 ORDER BY n;
t n
0000-00-00 00:00:00 7
0000-00-00 00:00:00 8
set time_zone='Europe/Moscow';
set time_zone='Europe/Moscow';
delete from t1;
insert into t1 values ('20040101000000',NULL), ('20040611093902',NULL);
set time_zone='MET';
insert into t2 (select * from t1);
SELECT * FROM t1 ORDER BY n;
t n
2003-12-31 22:00:00 9
2004-06-11 07:39:02 10
SELECT * FROM t2 ORDER BY n;
t n
2003-12-31 22:00:00 9
2004-06-11 07:39:02 10
delete from t2;
set timestamp=1000072000;
insert into t2 values (current_timestamp,NULL), (current_date,NULL), (current_time,NULL);
SELECT * FROM t2 ORDER BY n;
t n
2001-09-09 23:46:40 11
2001-09-09 12
23:46:40 13
delete from t2;
insert into t2 values (from_unixtime(1000000000),NULL),
(unix_timestamp('2001-09-09 03:46:40'),NULL);
SELECT * FROM t2 ORDER BY n;
t n
2001-09-09 03:46:40 14
1000000000 15
SELECT * FROM t2 ORDER BY n;
t n
2001-09-09 03:46:40 14
1000000000 15
set global time_zone='MET';
delete from t2;
set time_zone='UTC';
insert into t2 values(convert_tz('2004-01-01 00:00:00','MET',@@time_zone),NULL);
insert into t2 values(convert_tz('2005-01-01 00:00:00','MET','Japan'),NULL);
SELECT * FROM t2 ORDER BY n;
t n
2003-12-31 23:00:00 16
2005-01-01 08:00:00 17
SELECT * FROM t2 ORDER BY n;
t n
2003-12-31 23:00:00 16
2005-01-01 08:00:00 17
drop table t1, t2;
set global time_zone= @my_time_zone;
End of 4.1 tests
CREATE TABLE t1 (a INT, b TIMESTAMP);
INSERT INTO t1 VALUES (1, NOW());
SET @@session.time_zone='Japan';
UPDATE t1 SET b= '1970-01-01 08:59:59' WHERE a= 1;
Warnings:
Warning 1264 Out of range value for column 'b' at row 1
SELECT * FROM t1 ORDER BY a;
a b
1 0000-00-00 00:00:00
SET @@session.time_zone='Japan';
SELECT * FROM t1 ORDER BY a;
a b
1 0000-00-00 00:00:00
SET @@session.time_zone = default;
DROP TABLE t1;
SET @@session.time_zone = default;
include/stop_slave.inc
reset master;
CREATE TABLE t1 (date timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, a int(11) default NULL);
SET @@session.time_zone='+01:00';
insert into t1 values('2008-12-23 19:39:39',1);
SET @@session.time_zone='+02:00';
insert delayed into t1 values ('2008-12-23 19:39:39',2);
flush table t1;
flush logs;
select * from t1;
date a
2008-12-23 20:39:39 1
2008-12-23 19:39:39 2
DROP TABLE t1;
select * from t1 order by a;
date a
2008-12-23 20:39:39 1
2008-12-23 19:39:39 2
DROP TABLE t1;
SET @@session.time_zone = default;
include/rpl_end.inc
End of 5.0 tests
|