summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mnogosearch.org>2013-09-16 10:14:41 +0400
committerAlexander Barkov <bar@mnogosearch.org>2013-09-16 10:14:41 +0400
commit5d7b97b89ec2073bd8dffead6adb895cf1b15adc (patch)
tree7bbf9ba40f04dfb4f06c1ae44d25c26f3837decc /mysql-test
parent996f6194c69b556e37a143a6a175e60a9f57ab47 (diff)
downloadmariadb-git-5d7b97b89ec2073bd8dffead6adb895cf1b15adc.tar.gz
MDEV-4843 Wrong data type for TIMESTAMP('2001-01-01','10:10:10')
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/r/func_time.result64
-rw-r--r--mysql-test/t/func_time.test36
2 files changed, 100 insertions, 0 deletions
diff --git a/mysql-test/r/func_time.result b/mysql-test/r/func_time.result
index 99104136f2b..c85002d93f0 100644
--- a/mysql-test/r/func_time.result
+++ b/mysql-test/r/func_time.result
@@ -2177,3 +2177,67 @@ Warning 1292 Truncated incorrect DECIMAL value: 'xxx'
SELECT CONVERT_TZ('2001-01-01 10:20:30.12','+00:00','+01:00');
CONVERT_TZ('2001-01-01 10:20:30.12','+00:00','+01:00')
2001-01-01 11:20:30.12
+#
+# MDEV-4843 Wrong data type for TIMESTAMP('2001-01-01','10:10:10')
+#
+CREATE TABLE t1 AS SELECT
+TIMESTAMP('2001-01-01','10:10:10'),
+TIMESTAMP('2001-01-01','10:10:10.1'),
+TIMESTAMP('2001-01-01','10:10:10.12'),
+TIMESTAMP('2001-01-01','10:10:10.123'),
+TIMESTAMP('2001-01-01','10:10:10.1234'),
+TIMESTAMP('2001-01-01','10:10:10.12345'),
+TIMESTAMP('2001-01-01','10:10:10.123456'),
+TIMESTAMP('2001-01-01','10:10:10.1234567');
+Warnings:
+Warning 1292 Truncated incorrect time value: '10:10:10.1234567'
+SHOW COLUMNS FROM t1;
+Field Type Null Key Default Extra
+TIMESTAMP('2001-01-01','10:10:10') datetime YES NULL
+TIMESTAMP('2001-01-01','10:10:10.1') datetime(1) YES NULL
+TIMESTAMP('2001-01-01','10:10:10.12') datetime(2) YES NULL
+TIMESTAMP('2001-01-01','10:10:10.123') datetime(3) YES NULL
+TIMESTAMP('2001-01-01','10:10:10.1234') datetime(4) YES NULL
+TIMESTAMP('2001-01-01','10:10:10.12345') datetime(5) YES NULL
+TIMESTAMP('2001-01-01','10:10:10.123456') datetime(6) YES NULL
+TIMESTAMP('2001-01-01','10:10:10.1234567') datetime(6) YES NULL
+SELECT * FROM t1;
+TIMESTAMP('2001-01-01','10:10:10') TIMESTAMP('2001-01-01','10:10:10.1') TIMESTAMP('2001-01-01','10:10:10.12') TIMESTAMP('2001-01-01','10:10:10.123') TIMESTAMP('2001-01-01','10:10:10.1234') TIMESTAMP('2001-01-01','10:10:10.12345') TIMESTAMP('2001-01-01','10:10:10.123456') TIMESTAMP('2001-01-01','10:10:10.1234567')
+2001-01-01 10:10:10 2001-01-01 10:10:10.1 2001-01-01 10:10:10.12 2001-01-01 10:10:10.123 2001-01-01 10:10:10.1234 2001-01-01 10:10:10.12345 2001-01-01 10:10:10.123456 2001-01-01 10:10:10.123456
+DROP TABLE t1;
+CREATE TABLE t1 AS SELECT
+TIMESTAMP('2001-01-01 00:00:00','10:10:10'),
+TIMESTAMP('2001-01-01 00:00:00.1','10:10:10'),
+TIMESTAMP('2001-01-01 00:00:00.12','10:10:10'),
+TIMESTAMP('2001-01-01 00:00:00.123','10:10:10'),
+TIMESTAMP('2001-01-01 00:00:00.1234','10:10:10'),
+TIMESTAMP('2001-01-01 00:00:00.12345','10:10:10'),
+TIMESTAMP('2001-01-01 00:00:00.123456','10:10:10'),
+TIMESTAMP('2001-01-01 00:00:00.1234567','10:10:10');
+Warnings:
+Warning 1292 Truncated incorrect datetime value: '2001-01-01 00:00:00.1234567'
+SHOW COLUMNS FROM t1;
+Field Type Null Key Default Extra
+TIMESTAMP('2001-01-01 00:00:00','10:10:10') datetime YES NULL
+TIMESTAMP('2001-01-01 00:00:00.1','10:10:10') datetime(1) YES NULL
+TIMESTAMP('2001-01-01 00:00:00.12','10:10:10') datetime(2) YES NULL
+TIMESTAMP('2001-01-01 00:00:00.123','10:10:10') datetime(3) YES NULL
+TIMESTAMP('2001-01-01 00:00:00.1234','10:10:10') datetime(4) YES NULL
+TIMESTAMP('2001-01-01 00:00:00.12345','10:10:10') datetime(5) YES NULL
+TIMESTAMP('2001-01-01 00:00:00.123456','10:10:10') datetime(6) YES NULL
+TIMESTAMP('2001-01-01 00:00:00.1234567','10:10:10') datetime(6) YES NULL
+SELECT * FROM t1;
+TIMESTAMP('2001-01-01 00:00:00','10:10:10') TIMESTAMP('2001-01-01 00:00:00.1','10:10:10') TIMESTAMP('2001-01-01 00:00:00.12','10:10:10') TIMESTAMP('2001-01-01 00:00:00.123','10:10:10') TIMESTAMP('2001-01-01 00:00:00.1234','10:10:10') TIMESTAMP('2001-01-01 00:00:00.12345','10:10:10') TIMESTAMP('2001-01-01 00:00:00.123456','10:10:10') TIMESTAMP('2001-01-01 00:00:00.1234567','10:10:10')
+2001-01-01 10:10:10 2001-01-01 10:10:10.1 2001-01-01 10:10:10.12 2001-01-01 10:10:10.123 2001-01-01 10:10:10.1234 2001-01-01 10:10:10.12345 2001-01-01 10:10:10.123456 2001-01-01 10:10:10.123456
+DROP TABLE t1;
+CREATE TABLE t1 AS SELECT
+TIMESTAMP('00:00:00','10:10:10'),
+TIMESTAMP(TIME('00:00:00'),'10:10:10');
+SHOW COLUMNS FROM t1;
+Field Type Null Key Default Extra
+TIMESTAMP('00:00:00','10:10:10') datetime YES NULL
+TIMESTAMP(TIME('00:00:00'),'10:10:10') datetime YES NULL
+SELECT * FROM t1;
+TIMESTAMP('00:00:00','10:10:10') TIMESTAMP(TIME('00:00:00'),'10:10:10')
+NULL NULL
+DROP TABLE t1;
diff --git a/mysql-test/t/func_time.test b/mysql-test/t/func_time.test
index aba78b92c3e..4a3d74317c4 100644
--- a/mysql-test/t/func_time.test
+++ b/mysql-test/t/func_time.test
@@ -1321,3 +1321,39 @@ SELECT DATE_ADD('2001-01-01 00:00:00', INTERVAL -1.12345 SECOND);
SELECT DATE_ADD('2001-01-01 00:00:00', INTERVAL -1.123456 SECOND);
SELECT DATE_ADD('2001-01-01 00:00:00', INTERVAL 'xxx' SECOND);
SELECT CONVERT_TZ('2001-01-01 10:20:30.12','+00:00','+01:00');
+
+--echo #
+--echo # MDEV-4843 Wrong data type for TIMESTAMP('2001-01-01','10:10:10')
+--echo #
+CREATE TABLE t1 AS SELECT
+ TIMESTAMP('2001-01-01','10:10:10'),
+ TIMESTAMP('2001-01-01','10:10:10.1'),
+ TIMESTAMP('2001-01-01','10:10:10.12'),
+ TIMESTAMP('2001-01-01','10:10:10.123'),
+ TIMESTAMP('2001-01-01','10:10:10.1234'),
+ TIMESTAMP('2001-01-01','10:10:10.12345'),
+ TIMESTAMP('2001-01-01','10:10:10.123456'),
+ TIMESTAMP('2001-01-01','10:10:10.1234567');
+SHOW COLUMNS FROM t1;
+SELECT * FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 AS SELECT
+ TIMESTAMP('2001-01-01 00:00:00','10:10:10'),
+ TIMESTAMP('2001-01-01 00:00:00.1','10:10:10'),
+ TIMESTAMP('2001-01-01 00:00:00.12','10:10:10'),
+ TIMESTAMP('2001-01-01 00:00:00.123','10:10:10'),
+ TIMESTAMP('2001-01-01 00:00:00.1234','10:10:10'),
+ TIMESTAMP('2001-01-01 00:00:00.12345','10:10:10'),
+ TIMESTAMP('2001-01-01 00:00:00.123456','10:10:10'),
+ TIMESTAMP('2001-01-01 00:00:00.1234567','10:10:10');
+SHOW COLUMNS FROM t1;
+SELECT * FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 AS SELECT
+ TIMESTAMP('00:00:00','10:10:10'),
+ TIMESTAMP(TIME('00:00:00'),'10:10:10');
+SHOW COLUMNS FROM t1;
+SELECT * FROM t1;
+DROP TABLE t1;