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
  
     | 
    
      #
# Start of 10.2 tests
#
#
# MDEV-9391 InnoDB does not produce warnings when doing WHERE int_column=varchar_column
#
CREATE TABLE t1 (
a DOUBLE, b VARCHAR(1), c INT,
KEY(a), KEY(b)
) ENGINE=InnoDB;
INSERT INTO t1 VALUES
(1,'v',9),(2,'v',8),(3,'c',7),(4,'m',6),(5,'x',5),
(6,'i',4),(7,'e',3),(8,'p',2),(9,'s',1),(10,'j',9),
(11,'z',8),(12,'c',7),(13,'a',6),(14,'q',5),(15,'y',4),
(16,'n',3),(17,'r',2),(18,'v',1),(19,'p',0);
CREATE TABLE t2 (
pk INT, d VARCHAR(1), e INT,
PRIMARY KEY(pk), KEY(d,e)
) ENGINE=InnoDB;
INSERT INTO t2 VALUES
(1,'x',1),(2,'d',2),(3,'r',3),(4,'f',4),(5,'y',5),
(6,'u',6),(7,'m',7),(8,'k',8),(9,'o',9),(10,'w',1),
(11,'m',2),(12,'q',3),(13,'m',4),(14,'d',5),
(15,'g',6),(16,'x',7),(17,'f',8);
SELECT * FROM t1,t2 WHERE a=d;
a	b	c	pk	d	e
Warnings:
Warning	1292	Truncated incorrect DOUBLE value: 'd'
Warning	1292	Truncated incorrect DOUBLE value: 'd'
Warning	1292	Truncated incorrect DOUBLE value: 'f'
Warning	1292	Truncated incorrect DOUBLE value: 'f'
Warning	1292	Truncated incorrect DOUBLE value: 'g'
Warning	1292	Truncated incorrect DOUBLE value: 'k'
Warning	1292	Truncated incorrect DOUBLE value: 'm'
Warning	1292	Truncated incorrect DOUBLE value: 'm'
Warning	1292	Truncated incorrect DOUBLE value: 'm'
Warning	1292	Truncated incorrect DOUBLE value: 'o'
Warning	1292	Truncated incorrect DOUBLE value: 'q'
Warning	1292	Truncated incorrect DOUBLE value: 'r'
Warning	1292	Truncated incorrect DOUBLE value: 'u'
Warning	1292	Truncated incorrect DOUBLE value: 'w'
Warning	1292	Truncated incorrect DOUBLE value: 'x'
Warning	1292	Truncated incorrect DOUBLE value: 'x'
Warning	1292	Truncated incorrect DOUBLE value: 'y'
ALTER TABLE t1 MODIFY a DECIMAL(10,0);
SELECT * FROM t1,t2 WHERE a=d;
a	b	c	pk	d	e
Warnings:
Warning	1292	Truncated incorrect DECIMAL value: 'd'
Warning	1292	Truncated incorrect DECIMAL value: 'd'
Warning	1292	Truncated incorrect DECIMAL value: 'f'
Warning	1292	Truncated incorrect DECIMAL value: 'f'
Warning	1292	Truncated incorrect DECIMAL value: 'g'
Warning	1292	Truncated incorrect DECIMAL value: 'k'
Warning	1292	Truncated incorrect DECIMAL value: 'm'
Warning	1292	Truncated incorrect DECIMAL value: 'm'
Warning	1292	Truncated incorrect DECIMAL value: 'm'
Warning	1292	Truncated incorrect DECIMAL value: 'o'
Warning	1292	Truncated incorrect DECIMAL value: 'q'
Warning	1292	Truncated incorrect DECIMAL value: 'r'
Warning	1292	Truncated incorrect DECIMAL value: 'u'
Warning	1292	Truncated incorrect DECIMAL value: 'w'
Warning	1292	Truncated incorrect DECIMAL value: 'x'
Warning	1292	Truncated incorrect DECIMAL value: 'x'
Warning	1292	Truncated incorrect DECIMAL value: 'y'
ALTER TABLE t1 MODIFY a DOUBLE;
SELECT * FROM t1,t2 WHERE a=d;
a	b	c	pk	d	e
Warnings:
Warning	1292	Truncated incorrect DOUBLE value: 'd'
Warning	1292	Truncated incorrect DOUBLE value: 'd'
Warning	1292	Truncated incorrect DOUBLE value: 'f'
Warning	1292	Truncated incorrect DOUBLE value: 'f'
Warning	1292	Truncated incorrect DOUBLE value: 'g'
Warning	1292	Truncated incorrect DOUBLE value: 'k'
Warning	1292	Truncated incorrect DOUBLE value: 'm'
Warning	1292	Truncated incorrect DOUBLE value: 'm'
Warning	1292	Truncated incorrect DOUBLE value: 'm'
Warning	1292	Truncated incorrect DOUBLE value: 'o'
Warning	1292	Truncated incorrect DOUBLE value: 'q'
Warning	1292	Truncated incorrect DOUBLE value: 'r'
Warning	1292	Truncated incorrect DOUBLE value: 'u'
Warning	1292	Truncated incorrect DOUBLE value: 'w'
Warning	1292	Truncated incorrect DOUBLE value: 'x'
Warning	1292	Truncated incorrect DOUBLE value: 'x'
Warning	1292	Truncated incorrect DOUBLE value: 'y'
DROP TABLE t1,t2;
#
# End of 10.2 tests
#
 
     |