Loading mysql-test/r/strict.result +41 −0 Original line number Diff line number Diff line Loading @@ -1346,3 +1346,44 @@ t1 CREATE TABLE `t1` ( `i` int(11) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='123456789*123456789*123456789*123456789*123456789*123456789*' drop table t1; set sql_mode= 'traditional'; create table t1(col1 tinyint, col2 tinyint unsigned, col3 smallint, col4 smallint unsigned, col5 mediumint, col6 mediumint unsigned, col7 int, col8 int unsigned, col9 bigint, col10 bigint unsigned); insert into t1(col1) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col1' at row 1 insert into t1(col2) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col2' at row 1 insert into t1(col3) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col3' at row 1 insert into t1(col4) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col4' at row 1 insert into t1(col5) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col5' at row 1 insert into t1(col6) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col6' at row 1 insert into t1(col7) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col7' at row 1 insert into t1(col8) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col8' at row 1 insert into t1(col9) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col9' at row 1 insert into t1(col10) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col10' at row 1 drop table t1; set sql_mode='traditional'; create table t1(a year); insert into t1 values ('-'); ERROR HY000: Incorrect integer value: '-' for column 'a' at row 1 insert into t1 values ('+'); ERROR HY000: Incorrect integer value: '+' for column 'a' at row 1 insert into t1 values (''); ERROR HY000: Incorrect integer value: '' for column 'a' at row 1 insert into t1 values ('2000a'); ERROR 01000: Data truncated for column 'a' at row 1 insert into t1 values ('2E3x'); ERROR 01000: Data truncated for column 'a' at row 1 drop table t1; End of 5.0 tests mysql-test/r/type_date.result +1 −1 Original line number Diff line number Diff line Loading @@ -99,7 +99,7 @@ DROP TABLE t1, t2, t3; CREATE TABLE t1 (y YEAR); INSERT INTO t1 VALUES ('abc'); Warnings: Warning 1264 Out of range value adjusted for column 'y' at row 1 Warning 1366 Incorrect integer value: 'abc' for column 'y' at row 1 SELECT * FROM t1; y 0000 Loading mysql-test/r/type_year.result +12 −0 Original line number Diff line number Diff line Loading @@ -34,3 +34,15 @@ select if(y = now(), 1, 0) from t1; if(y = now(), 1, 0) 1 drop table t1; create table t1(a year); insert into t1 values (2000.5), ('2000.5'), ('2001a'), ('2.001E3'); Warnings: Warning 1265 Data truncated for column 'a' at row 3 select * from t1; a 2001 2001 2001 2001 drop table t1; End of 5.0 tests mysql-test/t/strict.test +50 −0 Original line number Diff line number Diff line Loading @@ -1200,3 +1200,53 @@ create table t1 (i int) comment '123456789*123456789*123456789*123456789*123456789*123456789*'; show create table t1; drop table t1; # # Bug #26359: Strings becoming truncated and converted to numbers under STRICT mode # set sql_mode= 'traditional'; create table t1(col1 tinyint, col2 tinyint unsigned, col3 smallint, col4 smallint unsigned, col5 mediumint, col6 mediumint unsigned, col7 int, col8 int unsigned, col9 bigint, col10 bigint unsigned); --error 1366 insert into t1(col1) values('-'); --error 1366 insert into t1(col2) values('+'); --error 1366 insert into t1(col3) values('-'); --error 1366 insert into t1(col4) values('+'); --error 1366 insert into t1(col5) values('-'); --error 1366 insert into t1(col6) values('+'); --error 1366 insert into t1(col7) values('-'); --error 1366 insert into t1(col8) values('+'); --error 1366 insert into t1(col9) values('-'); --error 1366 insert into t1(col10) values('+'); drop table t1; # # Bug #27176: Assigning a string to an year column has unexpected results # set sql_mode='traditional'; create table t1(a year); --error 1366 insert into t1 values ('-'); --error 1366 insert into t1 values ('+'); --error 1366 insert into t1 values (''); --error 1265 insert into t1 values ('2000a'); --error 1265 insert into t1 values ('2E3x'); drop table t1; --echo End of 5.0 tests mysql-test/t/type_year.test +9 −1 Original line number Diff line number Diff line Loading @@ -21,4 +21,12 @@ insert into t1 values (now()); select if(y = now(), 1, 0) from t1; drop table t1; # End of 4.1 tests # # Bug #27176: Assigning a string to an year column has unexpected results # create table t1(a year); insert into t1 values (2000.5), ('2000.5'), ('2001a'), ('2.001E3'); select * from t1; drop table t1; --echo End of 5.0 tests Loading
mysql-test/r/strict.result +41 −0 Original line number Diff line number Diff line Loading @@ -1346,3 +1346,44 @@ t1 CREATE TABLE `t1` ( `i` int(11) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='123456789*123456789*123456789*123456789*123456789*123456789*' drop table t1; set sql_mode= 'traditional'; create table t1(col1 tinyint, col2 tinyint unsigned, col3 smallint, col4 smallint unsigned, col5 mediumint, col6 mediumint unsigned, col7 int, col8 int unsigned, col9 bigint, col10 bigint unsigned); insert into t1(col1) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col1' at row 1 insert into t1(col2) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col2' at row 1 insert into t1(col3) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col3' at row 1 insert into t1(col4) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col4' at row 1 insert into t1(col5) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col5' at row 1 insert into t1(col6) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col6' at row 1 insert into t1(col7) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col7' at row 1 insert into t1(col8) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col8' at row 1 insert into t1(col9) values('-'); ERROR HY000: Incorrect integer value: '-' for column 'col9' at row 1 insert into t1(col10) values('+'); ERROR HY000: Incorrect integer value: '+' for column 'col10' at row 1 drop table t1; set sql_mode='traditional'; create table t1(a year); insert into t1 values ('-'); ERROR HY000: Incorrect integer value: '-' for column 'a' at row 1 insert into t1 values ('+'); ERROR HY000: Incorrect integer value: '+' for column 'a' at row 1 insert into t1 values (''); ERROR HY000: Incorrect integer value: '' for column 'a' at row 1 insert into t1 values ('2000a'); ERROR 01000: Data truncated for column 'a' at row 1 insert into t1 values ('2E3x'); ERROR 01000: Data truncated for column 'a' at row 1 drop table t1; End of 5.0 tests
mysql-test/r/type_date.result +1 −1 Original line number Diff line number Diff line Loading @@ -99,7 +99,7 @@ DROP TABLE t1, t2, t3; CREATE TABLE t1 (y YEAR); INSERT INTO t1 VALUES ('abc'); Warnings: Warning 1264 Out of range value adjusted for column 'y' at row 1 Warning 1366 Incorrect integer value: 'abc' for column 'y' at row 1 SELECT * FROM t1; y 0000 Loading
mysql-test/r/type_year.result +12 −0 Original line number Diff line number Diff line Loading @@ -34,3 +34,15 @@ select if(y = now(), 1, 0) from t1; if(y = now(), 1, 0) 1 drop table t1; create table t1(a year); insert into t1 values (2000.5), ('2000.5'), ('2001a'), ('2.001E3'); Warnings: Warning 1265 Data truncated for column 'a' at row 3 select * from t1; a 2001 2001 2001 2001 drop table t1; End of 5.0 tests
mysql-test/t/strict.test +50 −0 Original line number Diff line number Diff line Loading @@ -1200,3 +1200,53 @@ create table t1 (i int) comment '123456789*123456789*123456789*123456789*123456789*123456789*'; show create table t1; drop table t1; # # Bug #26359: Strings becoming truncated and converted to numbers under STRICT mode # set sql_mode= 'traditional'; create table t1(col1 tinyint, col2 tinyint unsigned, col3 smallint, col4 smallint unsigned, col5 mediumint, col6 mediumint unsigned, col7 int, col8 int unsigned, col9 bigint, col10 bigint unsigned); --error 1366 insert into t1(col1) values('-'); --error 1366 insert into t1(col2) values('+'); --error 1366 insert into t1(col3) values('-'); --error 1366 insert into t1(col4) values('+'); --error 1366 insert into t1(col5) values('-'); --error 1366 insert into t1(col6) values('+'); --error 1366 insert into t1(col7) values('-'); --error 1366 insert into t1(col8) values('+'); --error 1366 insert into t1(col9) values('-'); --error 1366 insert into t1(col10) values('+'); drop table t1; # # Bug #27176: Assigning a string to an year column has unexpected results # set sql_mode='traditional'; create table t1(a year); --error 1366 insert into t1 values ('-'); --error 1366 insert into t1 values ('+'); --error 1366 insert into t1 values (''); --error 1265 insert into t1 values ('2000a'); --error 1265 insert into t1 values ('2E3x'); drop table t1; --echo End of 5.0 tests
mysql-test/t/type_year.test +9 −1 Original line number Diff line number Diff line Loading @@ -21,4 +21,12 @@ insert into t1 values (now()); select if(y = now(), 1, 0) from t1; drop table t1; # End of 4.1 tests # # Bug #27176: Assigning a string to an year column has unexpected results # create table t1(a year); insert into t1 values (2000.5), ('2000.5'), ('2001a'), ('2.001E3'); select * from t1; drop table t1; --echo End of 5.0 tests