Commit d5e606c6 authored by Rucha Deodhar's avatar Rucha Deodhar

MDEV-26611: ERROR_INDEX isn't intuitively clear

Fixup for MDEV-10075

Analysis: ERROR_INDEX implemented in MDEV-10075 was not intuitively clear.

Fix: changed parser to use ROW_NUMBER instead of ERROR_INDEX. Removed
ERROR_INDEX and ERROR_INDEX_SYM from related files. Changed m_error_index
to m_row_number.
parent e9d80027
...@@ -801,8 +801,8 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE, p2 POINT); ...@@ -801,8 +801,8 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE, p2 POINT);
INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103); INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103);
INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102); INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102);
ERROR 23000: Duplicate entry '1' for key 'PRIMARY' ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
GET DIAGNOSTICS CONDITION 1 @var1= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var1= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var2= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var2= ROW_NUMBER;
Warnings: Warnings:
Error 1062 Duplicate entry '1' for key 'PRIMARY' Error 1062 Duplicate entry '1' for key 'PRIMARY'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -811,8 +811,8 @@ SELECT @var1, @var2; ...@@ -811,8 +811,8 @@ SELECT @var1, @var2;
2 2
INSERT INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308); INSERT INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308);
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var3= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var3= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var4= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var4= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -821,8 +821,8 @@ SELECT @var3, @var4; ...@@ -821,8 +821,8 @@ SELECT @var3, @var4;
2 NULL 2 NULL
INSERT INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j'); INSERT INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j');
ERROR 21S01: Column count doesn't match value count at row 3 ERROR 21S01: Column count doesn't match value count at row 3
GET DIAGNOSTICS CONDITION 1 @var5= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var5= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var6= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var6= ROW_NUMBER;
Warnings: Warnings:
Error 1136 Column count doesn't match value count at row 3 Error 1136 Column count doesn't match value count at row 3
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -831,8 +831,8 @@ SELECT @var5, @var6; ...@@ -831,8 +831,8 @@ SELECT @var5, @var6;
3 NULL 3 NULL
INSERT INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109); INSERT INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109);
ERROR 22007: Truncated incorrect CHAR(1) value: '123' ERROR 22007: Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var7= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var7= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var8= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var8= ROW_NUMBER;
Warnings: Warnings:
Error 1292 Truncated incorrect CHAR(1) value: '123' Error 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -841,8 +841,8 @@ SELECT @var7, @var8; ...@@ -841,8 +841,8 @@ SELECT @var7, @var8;
1 NULL 1 NULL
INSERT INTO t1 VALUES ('x','foo',1.0203); INSERT INTO t1 VALUES ('x','foo',1.0203);
ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
GET DIAGNOSTICS CONDITION 1 @var9= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var9= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var10= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var10= ROW_NUMBER;
Warnings: Warnings:
Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -851,8 +851,8 @@ SELECT @var9, @var10; ...@@ -851,8 +851,8 @@ SELECT @var9, @var10;
1 NULL 1 NULL
INSERT INTO t1 VALUES ((13,'m',1.0113)); INSERT INTO t1 VALUES ((13,'m',1.0113));
ERROR 21000: Operand should contain 1 column(s) ERROR 21000: Operand should contain 1 column(s)
GET DIAGNOSTICS CONDITION 1 @var11= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var11= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var12= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var12= ROW_NUMBER;
Warnings: Warnings:
Error 1241 Operand should contain 1 column(s) Error 1241 Operand should contain 1 column(s)
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -863,9 +863,9 @@ INSERT INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116); ...@@ -863,9 +863,9 @@ INSERT INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116);
Warnings: Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
GET DIAGNOSTICS CONDITION 1 @var13= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var13= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var14= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var14= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var15= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var15= ROW_NUMBER;
Warnings: Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
...@@ -880,9 +880,9 @@ INSERT IGNORE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102); ...@@ -880,9 +880,9 @@ INSERT IGNORE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102);
Warnings: Warnings:
Warning 1062 Duplicate entry '1' for key 'PRIMARY' Warning 1062 Duplicate entry '1' for key 'PRIMARY'
Warning 1062 Duplicate entry '2' for key 'PRIMARY' Warning 1062 Duplicate entry '2' for key 'PRIMARY'
GET DIAGNOSTICS CONDITION 1 @var16= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var16= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var17= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var17= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var18= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var18= ROW_NUMBER;
Warnings: Warnings:
Warning 1062 Duplicate entry '1' for key 'PRIMARY' Warning 1062 Duplicate entry '1' for key 'PRIMARY'
Warning 1062 Duplicate entry '2' for key 'PRIMARY' Warning 1062 Duplicate entry '2' for key 'PRIMARY'
...@@ -892,8 +892,8 @@ SELECT @var16, @var17, @var18; ...@@ -892,8 +892,8 @@ SELECT @var16, @var17, @var18;
2 3 NULL 2 3 NULL
INSERT IGNORE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308); INSERT IGNORE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308);
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var19= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var19= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var20= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var20= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -902,8 +902,8 @@ SELECT @var19, @var20; ...@@ -902,8 +902,8 @@ SELECT @var19, @var20;
2 NULL 2 NULL
INSERT IGNORE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j'); INSERT IGNORE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j');
ERROR 21S01: Column count doesn't match value count at row 3 ERROR 21S01: Column count doesn't match value count at row 3
GET DIAGNOSTICS CONDITION 1 @var21= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var21= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var22= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var22= ROW_NUMBER;
Warnings: Warnings:
Error 1136 Column count doesn't match value count at row 3 Error 1136 Column count doesn't match value count at row 3
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -913,8 +913,8 @@ SELECT @var21, @var22; ...@@ -913,8 +913,8 @@ SELECT @var21, @var22;
INSERT IGNORE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109); INSERT IGNORE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109);
Warnings: Warnings:
Warning 1292 Truncated incorrect CHAR(1) value: '123' Warning 1292 Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var23= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var23= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var24= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var24= ROW_NUMBER;
Warnings: Warnings:
Warning 1292 Truncated incorrect CHAR(1) value: '123' Warning 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -924,8 +924,8 @@ SELECT @var23, @var24; ...@@ -924,8 +924,8 @@ SELECT @var23, @var24;
INSERT IGNORE INTO t1 VALUES ('x','foo',1.0203); INSERT IGNORE INTO t1 VALUES ('x','foo',1.0203);
Warnings: Warnings:
Warning 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 Warning 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
GET DIAGNOSTICS CONDITION 1 @var25= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var25= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var26= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var26= ROW_NUMBER;
Warnings: Warnings:
Warning 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 Warning 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -934,8 +934,8 @@ SELECT @var25, @var26; ...@@ -934,8 +934,8 @@ SELECT @var25, @var26;
1 NULL 1 NULL
INSERT IGNORE INTO t1 VALUES ((13,'m',1.0113)); INSERT IGNORE INTO t1 VALUES ((13,'m',1.0113));
ERROR 21000: Operand should contain 1 column(s) ERROR 21000: Operand should contain 1 column(s)
GET DIAGNOSTICS CONDITION 1 @var27= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var27= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var28= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var28= ROW_NUMBER;
Warnings: Warnings:
Error 1241 Operand should contain 1 column(s) Error 1241 Operand should contain 1 column(s)
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -948,10 +948,10 @@ Warnings: ...@@ -948,10 +948,10 @@ Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
Warning 1062 Duplicate entry '0' for key 'PRIMARY' Warning 1062 Duplicate entry '0' for key 'PRIMARY'
GET DIAGNOSTICS CONDITION 1 @var29= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var29= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var30= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var30= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var31= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var31= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 4 @var32= ERROR_INDEX; GET DIAGNOSTICS CONDITION 4 @var32= ROW_NUMBER;
Warnings: Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
...@@ -967,8 +967,8 @@ INSERT INTO t1 SET id1=2, val1='b', d1=1.00102; ...@@ -967,8 +967,8 @@ INSERT INTO t1 SET id1=2, val1='b', d1=1.00102;
INSERT INTO t1 SET id1=3, val1='c', d1=1.00103; INSERT INTO t1 SET id1=3, val1='c', d1=1.00103;
INSERT INTO t1 SET id1=1, val1='a', d1=1.00101; INSERT INTO t1 SET id1=1, val1='a', d1=1.00101;
ERROR 23000: Duplicate entry '1' for key 'PRIMARY' ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
GET DIAGNOSTICS CONDITION 1 @var33= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var33= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var34= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var34= ROW_NUMBER;
Warnings: Warnings:
Error 1062 Duplicate entry '1' for key 'PRIMARY' Error 1062 Duplicate entry '1' for key 'PRIMARY'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -977,8 +977,8 @@ SELECT @var33, @var34; ...@@ -977,8 +977,8 @@ SELECT @var33, @var34;
1 NULL 1 NULL
INSERT INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308); INSERT INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308);
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var35= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var35= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var36= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var36= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -987,8 +987,8 @@ SELECT @var35, @var36; ...@@ -987,8 +987,8 @@ SELECT @var35, @var36;
1 NULL 1 NULL
INSERT INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109; INSERT INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109;
ERROR 22007: Truncated incorrect CHAR(1) value: '123' ERROR 22007: Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var37= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var37= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var38= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var38= ROW_NUMBER;
Warnings: Warnings:
Error 1292 Truncated incorrect CHAR(1) value: '123' Error 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -997,8 +997,8 @@ SELECT @var37, @var38; ...@@ -997,8 +997,8 @@ SELECT @var37, @var38;
1 NULL 1 NULL
INSERT INTO t1 SET id1='x', val1='foo', d1=1.0203; INSERT INTO t1 SET id1='x', val1='foo', d1=1.0203;
ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
GET DIAGNOSTICS CONDITION 1 @var39= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var39= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var40= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var40= ROW_NUMBER;
Warnings: Warnings:
Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1007,10 +1007,10 @@ SELECT @var39, @var40; ...@@ -1007,10 +1007,10 @@ SELECT @var39, @var40;
1 NULL 1 NULL
INSERT INTO t1 SET id1=3/0, val1='p', d1=1.0116; INSERT INTO t1 SET id1=3/0, val1='p', d1=1.0116;
ERROR 22012: Division by 0 ERROR 22012: Division by 0
GET DIAGNOSTICS CONDITION 1 @var41= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var41= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var42= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var42= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var43= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var43= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 4 @var44= ERROR_INDEX; GET DIAGNOSTICS CONDITION 4 @var44= ROW_NUMBER;
Warnings: Warnings:
Error 1365 Division by 0 Error 1365 Division by 0
Error 1048 Column 'id1' cannot be null Error 1048 Column 'id1' cannot be null
...@@ -1024,10 +1024,10 @@ TRUNCATE TABLE t1; ...@@ -1024,10 +1024,10 @@ TRUNCATE TABLE t1;
INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103); INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103);
INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101) INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101)
ON DUPLICATE KEY UPDATE val1='a', d1=1.00101; ON DUPLICATE KEY UPDATE val1='a', d1=1.00101;
GET DIAGNOSTICS CONDITION 1 @var45= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var45= ROW_NUMBER;
Warnings: Warnings:
Error 1758 Invalid condition number Error 1758 Invalid condition number
GET DIAGNOSTICS CONDITION 2 @var46= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var46= ROW_NUMBER;
Warnings: Warnings:
Error 1758 Invalid condition number Error 1758 Invalid condition number
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1037,8 +1037,8 @@ NULL NULL ...@@ -1037,8 +1037,8 @@ NULL NULL
INSERT INTO t1 VALUES (5,'e',1.00105),(3,'f',1.79769313486232e+308) INSERT INTO t1 VALUES (5,'e',1.00105),(3,'f',1.79769313486232e+308)
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var47= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var47= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var48= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var48= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1048,8 +1048,8 @@ SELECT @var47, @var48; ...@@ -1048,8 +1048,8 @@ SELECT @var47, @var48;
INSERT INTO t1 VALUES (5,'e',1.00105), (3,'i') INSERT INTO t1 VALUES (5,'e',1.00105), (3,'i')
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
ERROR 21S01: Column count doesn't match value count at row 2 ERROR 21S01: Column count doesn't match value count at row 2
GET DIAGNOSTICS CONDITION 1 @var49= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var49= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var50= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var50= ROW_NUMBER;
Warnings: Warnings:
Error 1136 Column count doesn't match value count at row 2 Error 1136 Column count doesn't match value count at row 2
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1059,8 +1059,8 @@ SELECT @var49, @var50; ...@@ -1059,8 +1059,8 @@ SELECT @var49, @var50;
INSERT INTO t1 VALUES (3, CAST(123 AS CHAR(1)), 1.00103) INSERT INTO t1 VALUES (3, CAST(123 AS CHAR(1)), 1.00103)
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
ERROR 22007: Truncated incorrect CHAR(1) value: '123' ERROR 22007: Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var51= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var51= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var52= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var52= ROW_NUMBER;
Warnings: Warnings:
Error 1292 Truncated incorrect CHAR(1) value: '123' Error 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1070,8 +1070,8 @@ SELECT @var51, @var52; ...@@ -1070,8 +1070,8 @@ SELECT @var51, @var52;
INSERT INTO t1 VALUES ('x','foo',1.0203) INSERT INTO t1 VALUES ('x','foo',1.0203)
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
GET DIAGNOSTICS CONDITION 1 @var53= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var53= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var54= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var54= ROW_NUMBER;
Warnings: Warnings:
Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1080,8 +1080,8 @@ SELECT @var53, @var54; ...@@ -1080,8 +1080,8 @@ SELECT @var53, @var54;
1 NULL 1 NULL
INSERT INTO t1 VALUES ((13,'m',1.0113)) ON DUPLICATE KEY UPDATE val1='c'; INSERT INTO t1 VALUES ((13,'m',1.0113)) ON DUPLICATE KEY UPDATE val1='c';
ERROR 21000: Operand should contain 1 column(s) ERROR 21000: Operand should contain 1 column(s)
GET DIAGNOSTICS CONDITION 1 @var55= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var55= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var56= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var56= ROW_NUMBER;
Warnings: Warnings:
Error 1241 Operand should contain 1 column(s) Error 1241 Operand should contain 1 column(s)
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1093,9 +1093,9 @@ ON DUPLICATE KEY UPDATE val1='b'; ...@@ -1093,9 +1093,9 @@ ON DUPLICATE KEY UPDATE val1='b';
Warnings: Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
GET DIAGNOSTICS CONDITION 1 @var57= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var57= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var58= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var58= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var59= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var59= ROW_NUMBER;
Warnings: Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
...@@ -1106,8 +1106,8 @@ SELECT @var57, @var58, @var59; ...@@ -1106,8 +1106,8 @@ SELECT @var57, @var58, @var59;
INSERT INTO t1 VALUES (1,'e',1.0),(5,'e',1.0),(5,'f',1.7) INSERT INTO t1 VALUES (1,'e',1.0),(5,'e',1.0),(5,'f',1.7)
ON DUPLICATE KEY UPDATE id1='1'; ON DUPLICATE KEY UPDATE id1='1';
ERROR 23000: Duplicate entry '1' for key 'PRIMARY' ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
GET DIAGNOSTICS CONDITION 1 @var60= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var60= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var61= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var61= ROW_NUMBER;
Warnings: Warnings:
Error 1062 Duplicate entry '1' for key 'PRIMARY' Error 1062 Duplicate entry '1' for key 'PRIMARY'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1126,8 +1126,8 @@ INSERT INTO t2 VALUES(1,'a',1.00101,PointFromText('POINT(20 10)')), ...@@ -1126,8 +1126,8 @@ INSERT INTO t2 VALUES(1,'a',1.00101,PointFromText('POINT(20 10)')),
INSERT INTO t1 SELECT id2, val2, d2 FROM t2; INSERT INTO t1 SELECT id2, val2, d2 FROM t2;
INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1; INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1;
ERROR 23000: Duplicate entry '1' for key 'PRIMARY' ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
GET DIAGNOSTICS CONDITION 1 @var62= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var62= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var63= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var63= ROW_NUMBER;
Warnings: Warnings:
Error 1062 Duplicate entry '1' for key 'PRIMARY' Error 1062 Duplicate entry '1' for key 'PRIMARY'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1136,8 +1136,8 @@ SELECT @var62, @var63; ...@@ -1136,8 +1136,8 @@ SELECT @var62, @var63;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2, val2, p2 from t2; INSERT INTO t1 SELECT id2, val2, p2 from t2;
ERROR 22007: Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1 ERROR 22007: Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1
GET DIAGNOSTICS CONDITION 1 @var64= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var64= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var65= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var65= ROW_NUMBER;
Warnings: Warnings:
Error 1366 Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1 Error 1366 Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1146,8 +1146,8 @@ SELECT @var64, @var65; ...@@ -1146,8 +1146,8 @@ SELECT @var64, @var65;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2, val2 FROM t2; INSERT INTO t1 SELECT id2, val2 FROM t2;
ERROR 21S01: Column count doesn't match value count at row 1 ERROR 21S01: Column count doesn't match value count at row 1
GET DIAGNOSTICS CONDITION 1 @var66= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var66= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var67= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var67= ROW_NUMBER;
Warnings: Warnings:
Error 1136 Column count doesn't match value count at row 1 Error 1136 Column count doesn't match value count at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1157,8 +1157,8 @@ SELECT @var66, @var67; ...@@ -1157,8 +1157,8 @@ SELECT @var66, @var67;
INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)')); INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)'));
INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4; INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4;
ERROR 22007: Truncated incorrect CHAR(1) value: '123' ERROR 22007: Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var68= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var68= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var69= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var69= ROW_NUMBER;
Warnings: Warnings:
Error 1292 Truncated incorrect CHAR(1) value: '123' Error 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1167,8 +1167,8 @@ SELECT @var68, @var69; ...@@ -1167,8 +1167,8 @@ SELECT @var68, @var69;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2; INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2;
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var70= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var70= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var71= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var71= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1177,9 +1177,9 @@ SELECT @var70, @var71; ...@@ -1177,9 +1177,9 @@ SELECT @var70, @var71;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2; INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2;
ERROR 22012: Division by 0 ERROR 22012: Division by 0
GET DIAGNOSTICS CONDITION 1 @var72= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var72= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var73= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var73= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var74= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var74= ROW_NUMBER;
Warnings: Warnings:
Error 1365 Division by 0 Error 1365 Division by 0
Error 1048 Column 'id1' cannot be null Error 1048 Column 'id1' cannot be null
...@@ -1188,7 +1188,7 @@ SELECT @var72, @var73, @var74; ...@@ -1188,7 +1188,7 @@ SELECT @var72, @var73, @var74;
@var72 @var73 @var74 @var72 @var73 @var74
1 1 NULL 1 1 NULL
DROP TABLE t1,t2; DROP TABLE t1,t2;
# Checking ERROR_INDEX in STORED PROCEDURE for INSERT # Checking ROW_NUMBER in STORED PROCEDURE for INSERT
CREATE TABLE t1(id1 INT PRIMARY KEY); CREATE TABLE t1(id1 INT PRIMARY KEY);
CREATE PROCEDURE proc1 () CREATE PROCEDURE proc1 ()
BEGIN BEGIN
...@@ -1196,8 +1196,8 @@ DECLARE var75 INT; ...@@ -1196,8 +1196,8 @@ DECLARE var75 INT;
DECLARE var76 INT; DECLARE var76 INT;
INSERT INTO t1 VALUES (1),(2); INSERT INTO t1 VALUES (1),(2);
INSERT IGNORE INTO t1 VALUES(2); INSERT IGNORE INTO t1 VALUES(2);
GET DIAGNOSTICS CONDITION 1 var75= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 var75= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 var76= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 var76= ROW_NUMBER;
SELECT var75, var76; SELECT var75, var76;
END; END;
| |
...@@ -1208,13 +1208,13 @@ Warnings: ...@@ -1208,13 +1208,13 @@ Warnings:
Warning 1062 Duplicate entry '2' for key 'PRIMARY' Warning 1062 Duplicate entry '2' for key 'PRIMARY'
Error 1758 Invalid condition number Error 1758 Invalid condition number
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
# Checking ERROR_INDEX in PREPARED STATEMENTS for INSERT # Checking ROW_NUMBER in PREPARED STATEMENTS for INSERT
INSERT INTO t1 VALUES (1), (2), (3); INSERT INTO t1 VALUES (1), (2), (3);
INSERT IGNORE INTO t1 VALUES(2),(3),(4); INSERT IGNORE INTO t1 VALUES(2),(3),(4);
Warnings: Warnings:
Warning 1062 Duplicate entry '2' for key 'PRIMARY' Warning 1062 Duplicate entry '2' for key 'PRIMARY'
Warning 1062 Duplicate entry '3' for key 'PRIMARY' Warning 1062 Duplicate entry '3' for key 'PRIMARY'
PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var77= ERROR_INDEX"; PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var77= ROW_NUMBER";
EXECUTE stmt1; EXECUTE stmt1;
SELECT @var77; SELECT @var77;
@var77 @var77
...@@ -1230,7 +1230,7 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE); ...@@ -1230,7 +1230,7 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE);
# Simple REPLACE statement # Simple REPLACE statement
REPLACE INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103); REPLACE INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103);
REPLACE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102); REPLACE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102);
GET DIAGNOSTICS CONDITION 1 @var78= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var78= ROW_NUMBER;
Warnings: Warnings:
Error 1758 Invalid condition number Error 1758 Invalid condition number
SELECT @var78; SELECT @var78;
...@@ -1238,8 +1238,8 @@ SELECT @var78; ...@@ -1238,8 +1238,8 @@ SELECT @var78;
NULL NULL
REPLACE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308); REPLACE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308);
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var79= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var79= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var80= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var80= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1248,8 +1248,8 @@ SELECT @var79, @var80; ...@@ -1248,8 +1248,8 @@ SELECT @var79, @var80;
2 NULL 2 NULL
REPLACE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j'); REPLACE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j');
ERROR 21S01: Column count doesn't match value count at row 3 ERROR 21S01: Column count doesn't match value count at row 3
GET DIAGNOSTICS CONDITION 1 @var81= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var81= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var82= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var82= ROW_NUMBER;
Warnings: Warnings:
Error 1136 Column count doesn't match value count at row 3 Error 1136 Column count doesn't match value count at row 3
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1258,8 +1258,8 @@ SELECT @var81, @var82; ...@@ -1258,8 +1258,8 @@ SELECT @var81, @var82;
3 NULL 3 NULL
REPLACE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109); REPLACE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109);
ERROR 22007: Truncated incorrect CHAR(1) value: '123' ERROR 22007: Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var83= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var83= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var84= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var84= ROW_NUMBER;
Warnings: Warnings:
Error 1292 Truncated incorrect CHAR(1) value: '123' Error 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1268,8 +1268,8 @@ SELECT @var83, @var84; ...@@ -1268,8 +1268,8 @@ SELECT @var83, @var84;
1 NULL 1 NULL
REPLACE INTO t1 VALUES ('x','foo',1.0203); REPLACE INTO t1 VALUES ('x','foo',1.0203);
ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
GET DIAGNOSTICS CONDITION 1 @var85= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var85= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var86= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var86= ROW_NUMBER;
Warnings: Warnings:
Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1278,8 +1278,8 @@ SELECT @var85, @var86; ...@@ -1278,8 +1278,8 @@ SELECT @var85, @var86;
1 NULL 1 NULL
REPLACE INTO t1 VALUES ((13,'m',1.0113)); REPLACE INTO t1 VALUES ((13,'m',1.0113));
ERROR 21000: Operand should contain 1 column(s) ERROR 21000: Operand should contain 1 column(s)
GET DIAGNOSTICS CONDITION 1 @var87= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var87= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var88= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var88= ROW_NUMBER;
Warnings: Warnings:
Error 1241 Operand should contain 1 column(s) Error 1241 Operand should contain 1 column(s)
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1290,9 +1290,9 @@ REPLACE INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116); ...@@ -1290,9 +1290,9 @@ REPLACE INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116);
Warnings: Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
GET DIAGNOSTICS CONDITION 1 @var89= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var89= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var90= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var90= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var91= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var91= ROW_NUMBER;
Warnings: Warnings:
Warning 1365 Division by 0 Warning 1365 Division by 0
Warning 1048 Column 'id1' cannot be null Warning 1048 Column 'id1' cannot be null
...@@ -1306,7 +1306,7 @@ REPLACE INTO t1 SET id1=1, val1='a', d1=1.00101; ...@@ -1306,7 +1306,7 @@ REPLACE INTO t1 SET id1=1, val1='a', d1=1.00101;
REPLACE INTO t1 SET id1=2, val1='b', d1=1.00102; REPLACE INTO t1 SET id1=2, val1='b', d1=1.00102;
REPLACE INTO t1 SET id1=3, val1='c', d1=1.00103; REPLACE INTO t1 SET id1=3, val1='c', d1=1.00103;
REPLACE INTO t1 SET id1=1, val1='a', d1=1.00101; REPLACE INTO t1 SET id1=1, val1='a', d1=1.00101;
GET DIAGNOSTICS CONDITION 1 @var92= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var92= ROW_NUMBER;
Warnings: Warnings:
Error 1758 Invalid condition number Error 1758 Invalid condition number
SELECT @var92; SELECT @var92;
...@@ -1314,8 +1314,8 @@ SELECT @var92; ...@@ -1314,8 +1314,8 @@ SELECT @var92;
NULL NULL
REPLACE INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308); REPLACE INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308);
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var93= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var93= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var94= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var94= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1324,8 +1324,8 @@ SELECT @var93, @var94; ...@@ -1324,8 +1324,8 @@ SELECT @var93, @var94;
1 NULL 1 NULL
REPLACE INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109; REPLACE INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109;
ERROR 22007: Truncated incorrect CHAR(1) value: '123' ERROR 22007: Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var95= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var95= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var96= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var96= ROW_NUMBER;
Warnings: Warnings:
Error 1292 Truncated incorrect CHAR(1) value: '123' Error 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1334,8 +1334,8 @@ SELECT @var95, @var96; ...@@ -1334,8 +1334,8 @@ SELECT @var95, @var96;
1 NULL 1 NULL
REPLACE INTO t1 SET id1='x', val1='foo', d1=1.0203; REPLACE INTO t1 SET id1='x', val1='foo', d1=1.0203;
ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 ERROR 22007: Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
GET DIAGNOSTICS CONDITION 1 @var97= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var97= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var98= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var98= ROW_NUMBER;
Warnings: Warnings:
Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1 Error 1366 Incorrect integer value: 'x' for column `test`.`t1`.`id1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1344,10 +1344,10 @@ SELECT @var97, @var98; ...@@ -1344,10 +1344,10 @@ SELECT @var97, @var98;
1 NULL 1 NULL
REPLACE INTO t1 SET id1=3/0, val1='p', d1=1.0116; REPLACE INTO t1 SET id1=3/0, val1='p', d1=1.0116;
ERROR 22012: Division by 0 ERROR 22012: Division by 0
GET DIAGNOSTICS CONDITION 1 @var99= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var99= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var100= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var100= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var101= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var101= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 4 @var102= ERROR_INDEX; GET DIAGNOSTICS CONDITION 4 @var102= ROW_NUMBER;
Warnings: Warnings:
Error 1365 Division by 0 Error 1365 Division by 0
Error 1048 Column 'id1' cannot be null Error 1048 Column 'id1' cannot be null
...@@ -1368,8 +1368,8 @@ INSERT INTO t2 VALUES(1,'a',1.00101,PointFromText('POINT(20 10)')), ...@@ -1368,8 +1368,8 @@ INSERT INTO t2 VALUES(1,'a',1.00101,PointFromText('POINT(20 10)')),
INSERT INTO t1 SELECT id2, val2, d2 FROM t2; INSERT INTO t1 SELECT id2, val2, d2 FROM t2;
INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1; INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1;
ERROR 23000: Duplicate entry '1' for key 'PRIMARY' ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
GET DIAGNOSTICS CONDITION 1 @var103= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var103= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var104= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var104= ROW_NUMBER;
Warnings: Warnings:
Error 1062 Duplicate entry '1' for key 'PRIMARY' Error 1062 Duplicate entry '1' for key 'PRIMARY'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1378,8 +1378,8 @@ SELECT @var103, @var104; ...@@ -1378,8 +1378,8 @@ SELECT @var103, @var104;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2, val2, p2 from t2; INSERT INTO t1 SELECT id2, val2, p2 from t2;
ERROR 22007: Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1 ERROR 22007: Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1
GET DIAGNOSTICS CONDITION 1 @var105= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var105= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var106= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var106= ROW_NUMBER;
Warnings: Warnings:
Error 1366 Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1 Error 1366 Incorrect double value: '\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x004@\x00\x00\x00\x00\x00\x00$@' for column `test`.`t1`.`d1` at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1388,8 +1388,8 @@ SELECT @var105, @var106; ...@@ -1388,8 +1388,8 @@ SELECT @var105, @var106;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2, val2 FROM t2; INSERT INTO t1 SELECT id2, val2 FROM t2;
ERROR 21S01: Column count doesn't match value count at row 1 ERROR 21S01: Column count doesn't match value count at row 1
GET DIAGNOSTICS CONDITION 1 @var107= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var107= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var108= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var108= ROW_NUMBER;
Warnings: Warnings:
Error 1136 Column count doesn't match value count at row 1 Error 1136 Column count doesn't match value count at row 1
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1399,8 +1399,8 @@ SELECT @var107, @var108; ...@@ -1399,8 +1399,8 @@ SELECT @var107, @var108;
INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)')); INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)'));
INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4; INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4;
ERROR 22007: Truncated incorrect CHAR(1) value: '123' ERROR 22007: Truncated incorrect CHAR(1) value: '123'
GET DIAGNOSTICS CONDITION 1 @var109= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var109= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var110= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var110= ROW_NUMBER;
Warnings: Warnings:
Error 1292 Truncated incorrect CHAR(1) value: '123' Error 1292 Truncated incorrect CHAR(1) value: '123'
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1409,8 +1409,8 @@ SELECT @var109, @var110; ...@@ -1409,8 +1409,8 @@ SELECT @var109, @var110;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2; INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2;
ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing ERROR 22007: Illegal double '1.79769313486232e+308' value found during parsing
GET DIAGNOSTICS CONDITION 1 @var111= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var111= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var112= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var112= ROW_NUMBER;
Warnings: Warnings:
Error 1367 Illegal double '1.79769313486232e+308' value found during parsing Error 1367 Illegal double '1.79769313486232e+308' value found during parsing
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1419,9 +1419,9 @@ SELECT @var111, @var112; ...@@ -1419,9 +1419,9 @@ SELECT @var111, @var112;
1 NULL 1 NULL
INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2; INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2;
ERROR 22012: Division by 0 ERROR 22012: Division by 0
GET DIAGNOSTICS CONDITION 1 @var113= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var113= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var114= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var114= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var115= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var115= ROW_NUMBER;
Warnings: Warnings:
Error 1365 Division by 0 Error 1365 Division by 0
Error 1048 Column 'id1' cannot be null Error 1048 Column 'id1' cannot be null
...@@ -1430,13 +1430,13 @@ SELECT @var113, @var114, @var115; ...@@ -1430,13 +1430,13 @@ SELECT @var113, @var114, @var115;
@var113 @var114 @var115 @var113 @var114 @var115
1 1 NULL 1 1 NULL
DROP TABLE t1,t2; DROP TABLE t1,t2;
# Checking ERROR_INDEX in STORED PROCEDURE # Checking ROW_NUMBER in STORED PROCEDURE
CREATE TABLE t1(id1 INT PRIMARY KEY); CREATE TABLE t1(id1 INT PRIMARY KEY);
CREATE PROCEDURE proc1 () CREATE PROCEDURE proc1 ()
BEGIN BEGIN
DECLARE var116 INT; DECLARE var116 INT;
REPLACE INTO t1 VALUES (1),(2); REPLACE INTO t1 VALUES (1),(2);
GET DIAGNOSTICS CONDITION 1 var116= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 var116= ROW_NUMBER;
SELECT var116; SELECT var116;
END; END;
| |
...@@ -1446,9 +1446,9 @@ NULL ...@@ -1446,9 +1446,9 @@ NULL
Warnings: Warnings:
Error 1758 Invalid condition number Error 1758 Invalid condition number
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
# Checking ERROR_INDEX in PREPARED STATEMENTS # Checking ROW_NUMBER in PREPARED STATEMENTS
REPLACE INTO t1 VALUES (1), (2), (3); REPLACE INTO t1 VALUES (1), (2), (3);
PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var117= ERROR_INDEX"; PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var117= ROW_NUMBER";
EXECUTE stmt1; EXECUTE stmt1;
Warnings: Warnings:
Error 1758 Invalid condition number Error 1758 Invalid condition number
...@@ -1459,7 +1459,7 @@ DROP PROCEDURE proc1; ...@@ -1459,7 +1459,7 @@ DROP PROCEDURE proc1;
DROP PREPARE stmt1; DROP PREPARE stmt1;
DROP TABLE t1; DROP TABLE t1;
# #
# Checking that error_index is only for errors with rows/values # Checking that ROW_NUMBER is only for errors with rows/values
# #
# INSERT STATEMENT # INSERT STATEMENT
CREATE TABLE t1(id1 INT); CREATE TABLE t1(id1 INT);
...@@ -1467,7 +1467,7 @@ CREATE TABLE t2(id2 INT); ...@@ -1467,7 +1467,7 @@ CREATE TABLE t2(id2 INT);
CREATE VIEW v AS SELECT t1.id1 AS A, t2.id2 AS b FROM t1,t2; CREATE VIEW v AS SELECT t1.id1 AS A, t2.id2 AS b FROM t1,t2;
INSERT INTO t1(id1, id1) VALUES (1,1); INSERT INTO t1(id1, id1) VALUES (1,1);
ERROR 42000: Column 'id1' specified twice ERROR 42000: Column 'id1' specified twice
GET DIAGNOSTICS CONDITION 1 @var118= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var118= ROW_NUMBER;
SELECT @var118; SELECT @var118;
@var118 @var118
1 1
...@@ -1478,38 +1478,38 @@ RETURN 1; ...@@ -1478,38 +1478,38 @@ RETURN 1;
END | END |
INSERT INTO t1 VALUES (1), (f1()); INSERT INTO t1 VALUES (1), (f1());
ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger
GET DIAGNOSTICS CONDITION 1 @var119= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var119= ROW_NUMBER;
SELECT @var119; SELECT @var119;
@var119 @var119
2 2
INSERT INTO t1 VALUES (1) RETURNING id2; INSERT INTO t1 VALUES (1) RETURNING id2;
ERROR 42S22: Unknown column 'id2' in 'field list' ERROR 42S22: Unknown column 'id2' in 'field list'
GET DIAGNOSTICS CONDITION 1 @var120= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var120= ROW_NUMBER;
SELECT @var120; SELECT @var120;
@var120 @var120
1 1
INSERT INTO t1(id2) VALUES(1); INSERT INTO t1(id2) VALUES(1);
ERROR 42S22: Unknown column 'id2' in 'field list' ERROR 42S22: Unknown column 'id2' in 'field list'
GET DIAGNOSTICS CONDITION 1 @var121= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var121= ROW_NUMBER;
SELECT @var121; SELECT @var121;
@var121 @var121
1 1
INSERT INTO v VALUES(1,2); INSERT INTO v VALUES(1,2);
ERROR HY000: Can not insert into join view 'test.v' without fields list ERROR HY000: Can not insert into join view 'test.v' without fields list
GET DIAGNOSTICS CONDITION 1 @var122= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var122= ROW_NUMBER;
SELECT @var122; SELECT @var122;
@var122 @var122
1 1
INSERT INTO v(a,b) VALUES (1,2); INSERT INTO v(a,b) VALUES (1,2);
ERROR HY000: Can not modify more than one base table through a join view 'test.v' ERROR HY000: Can not modify more than one base table through a join view 'test.v'
GET DIAGNOSTICS CONDITION 1 @var123= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var123= ROW_NUMBER;
SELECT @var123; SELECT @var123;
@var123 @var123
1 1
# REPLACE STATEMENT # REPLACE STATEMENT
REPLACE INTO t1(id1, id1) VALUES (1,1); REPLACE INTO t1(id1, id1) VALUES (1,1);
ERROR 42000: Column 'id1' specified twice ERROR 42000: Column 'id1' specified twice
GET DIAGNOSTICS CONDITION 1 @var124= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var124= ROW_NUMBER;
SELECT @var124; SELECT @var124;
@var124 @var124
1 1
...@@ -1520,31 +1520,31 @@ RETURN 1; ...@@ -1520,31 +1520,31 @@ RETURN 1;
END | END |
REPLACE INTO t1 VALUES (1), (f2()); REPLACE INTO t1 VALUES (1), (f2());
ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger
GET DIAGNOSTICS CONDITION 1 @var125= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var125= ROW_NUMBER;
SELECT @var125; SELECT @var125;
@var125 @var125
2 2
REPLACE INTO t1 VALUES (1) RETURNING id2; REPLACE INTO t1 VALUES (1) RETURNING id2;
ERROR 42S22: Unknown column 'id2' in 'field list' ERROR 42S22: Unknown column 'id2' in 'field list'
GET DIAGNOSTICS CONDITION 1 @var126= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var126= ROW_NUMBER;
SELECT @var126; SELECT @var126;
@var126 @var126
1 1
REPLACE INTO t1(id2) VALUES(1); REPLACE INTO t1(id2) VALUES(1);
ERROR 42S22: Unknown column 'id2' in 'field list' ERROR 42S22: Unknown column 'id2' in 'field list'
GET DIAGNOSTICS CONDITION 1 @var127= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var127= ROW_NUMBER;
SELECT @var127; SELECT @var127;
@var127 @var127
1 1
REPLACE INTO v VALUES(1,2); REPLACE INTO v VALUES(1,2);
ERROR HY000: Can not insert into join view 'test.v' without fields list ERROR HY000: Can not insert into join view 'test.v' without fields list
GET DIAGNOSTICS CONDITION 1 @var128= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var128= ROW_NUMBER;
SELECT @var128; SELECT @var128;
@var128 @var128
1 1
REPLACE INTO v(a,b) VALUES (1,2); REPLACE INTO v(a,b) VALUES (1,2);
ERROR HY000: Can not modify more than one base table through a join view 'test.v' ERROR HY000: Can not modify more than one base table through a join view 'test.v'
GET DIAGNOSTICS CONDITION 1 @var129= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var129= ROW_NUMBER;
SELECT @var129; SELECT @var129;
@var129 @var129
1 1
......
...@@ -869,44 +869,44 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE, p2 POINT); ...@@ -869,44 +869,44 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE, p2 POINT);
INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103); INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103);
--error ER_DUP_ENTRY --error ER_DUP_ENTRY
INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102); INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102);
GET DIAGNOSTICS CONDITION 1 @var1= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var1= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var2= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var2= ROW_NUMBER;
SELECT @var1, @var2; SELECT @var1, @var2;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
INSERT INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308); INSERT INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308);
GET DIAGNOSTICS CONDITION 1 @var3= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var3= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var4= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var4= ROW_NUMBER;
SELECT @var3, @var4; SELECT @var3, @var4;
--error ER_WRONG_VALUE_COUNT_ON_ROW --error ER_WRONG_VALUE_COUNT_ON_ROW
INSERT INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j'); INSERT INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j');
GET DIAGNOSTICS CONDITION 1 @var5= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var5= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var6= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var6= ROW_NUMBER;
SELECT @var5, @var6; SELECT @var5, @var6;
--error ER_TRUNCATED_WRONG_VALUE --error ER_TRUNCATED_WRONG_VALUE
INSERT INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109); INSERT INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109);
GET DIAGNOSTICS CONDITION 1 @var7= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var7= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var8= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var8= ROW_NUMBER;
SELECT @var7, @var8; SELECT @var7, @var8;
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD --error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
INSERT INTO t1 VALUES ('x','foo',1.0203); INSERT INTO t1 VALUES ('x','foo',1.0203);
GET DIAGNOSTICS CONDITION 1 @var9= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var9= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var10= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var10= ROW_NUMBER;
SELECT @var9, @var10; SELECT @var9, @var10;
--error ER_OPERAND_COLUMNS --error ER_OPERAND_COLUMNS
INSERT INTO t1 VALUES ((13,'m',1.0113)); INSERT INTO t1 VALUES ((13,'m',1.0113));
GET DIAGNOSTICS CONDITION 1 @var11= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var11= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var12= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var12= ROW_NUMBER;
SELECT @var11, @var12; SELECT @var11, @var12;
INSERT INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116); INSERT INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116);
GET DIAGNOSTICS CONDITION 1 @var13= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var13= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var14= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var14= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var15= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var15= ROW_NUMBER;
SELECT @var13, @var14, @var15; SELECT @var13, @var14, @var15;
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
...@@ -915,45 +915,45 @@ TRUNCATE TABLE t1; ...@@ -915,45 +915,45 @@ TRUNCATE TABLE t1;
INSERT IGNORE INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103); INSERT IGNORE INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103);
INSERT IGNORE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102); INSERT IGNORE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102);
GET DIAGNOSTICS CONDITION 1 @var16= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var16= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var17= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var17= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var18= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var18= ROW_NUMBER;
SELECT @var16, @var17, @var18; SELECT @var16, @var17, @var18;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
INSERT IGNORE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308); INSERT IGNORE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308);
GET DIAGNOSTICS CONDITION 1 @var19= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var19= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var20= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var20= ROW_NUMBER;
SELECT @var19, @var20; SELECT @var19, @var20;
--error ER_WRONG_VALUE_COUNT_ON_ROW --error ER_WRONG_VALUE_COUNT_ON_ROW
INSERT IGNORE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j'); INSERT IGNORE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j');
GET DIAGNOSTICS CONDITION 1 @var21= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var21= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var22= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var22= ROW_NUMBER;
SELECT @var21, @var22; SELECT @var21, @var22;
INSERT IGNORE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109); INSERT IGNORE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109);
GET DIAGNOSTICS CONDITION 1 @var23= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var23= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var24= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var24= ROW_NUMBER;
SELECT @var23, @var24; SELECT @var23, @var24;
INSERT IGNORE INTO t1 VALUES ('x','foo',1.0203); INSERT IGNORE INTO t1 VALUES ('x','foo',1.0203);
GET DIAGNOSTICS CONDITION 1 @var25= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var25= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var26= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var26= ROW_NUMBER;
SELECT @var25, @var26; SELECT @var25, @var26;
--error ER_OPERAND_COLUMNS --error ER_OPERAND_COLUMNS
INSERT IGNORE INTO t1 VALUES ((13,'m',1.0113)); INSERT IGNORE INTO t1 VALUES ((13,'m',1.0113));
GET DIAGNOSTICS CONDITION 1 @var27= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var27= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var28= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var28= ROW_NUMBER;
SELECT @var27, @var28; SELECT @var27, @var28;
INSERT IGNORE INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), INSERT IGNORE INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115),
(16/0,'p',1.0116); (16/0,'p',1.0116);
GET DIAGNOSTICS CONDITION 1 @var29= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var29= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var30= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var30= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var31= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var31= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 4 @var32= ERROR_INDEX; GET DIAGNOSTICS CONDITION 4 @var32= ROW_NUMBER;
SELECT @var29, @var30, @var31, @var32; SELECT @var29, @var30, @var31, @var32;
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
...@@ -966,35 +966,35 @@ INSERT INTO t1 SET id1=3, val1='c', d1=1.00103; ...@@ -966,35 +966,35 @@ INSERT INTO t1 SET id1=3, val1='c', d1=1.00103;
--error ER_DUP_ENTRY --error ER_DUP_ENTRY
INSERT INTO t1 SET id1=1, val1='a', d1=1.00101; INSERT INTO t1 SET id1=1, val1='a', d1=1.00101;
GET DIAGNOSTICS CONDITION 1 @var33= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var33= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var34= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var34= ROW_NUMBER;
SELECT @var33, @var34; SELECT @var33, @var34;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
INSERT INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308); INSERT INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308);
GET DIAGNOSTICS CONDITION 1 @var35= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var35= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var36= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var36= ROW_NUMBER;
SELECT @var35, @var36; SELECT @var35, @var36;
--error ER_TRUNCATED_WRONG_VALUE --error ER_TRUNCATED_WRONG_VALUE
INSERT INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109; INSERT INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109;
GET DIAGNOSTICS CONDITION 1 @var37= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var37= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var38= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var38= ROW_NUMBER;
SELECT @var37, @var38; SELECT @var37, @var38;
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD --error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
INSERT INTO t1 SET id1='x', val1='foo', d1=1.0203; INSERT INTO t1 SET id1='x', val1='foo', d1=1.0203;
GET DIAGNOSTICS CONDITION 1 @var39= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var39= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var40= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var40= ROW_NUMBER;
SELECT @var39, @var40; SELECT @var39, @var40;
--error ER_DIVISION_BY_ZERO --error ER_DIVISION_BY_ZERO
INSERT INTO t1 SET id1=3/0, val1='p', d1=1.0116; INSERT INTO t1 SET id1=3/0, val1='p', d1=1.0116;
GET DIAGNOSTICS CONDITION 1 @var41= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var41= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var42= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var42= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var43= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var43= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 4 @var44= ERROR_INDEX; GET DIAGNOSTICS CONDITION 4 @var44= ROW_NUMBER;
SELECT @var41, @var42, @var43, @var44; SELECT @var41, @var42, @var43, @var44;
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
...@@ -1005,56 +1005,56 @@ INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103); ...@@ -1005,56 +1005,56 @@ INSERT INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103);
INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101) INSERT INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101)
ON DUPLICATE KEY UPDATE val1='a', d1=1.00101; ON DUPLICATE KEY UPDATE val1='a', d1=1.00101;
GET DIAGNOSTICS CONDITION 1 @var45= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var45= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var46= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var46= ROW_NUMBER;
SELECT @var45, @var46; SELECT @var45, @var46;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
INSERT INTO t1 VALUES (5,'e',1.00105),(3,'f',1.79769313486232e+308) INSERT INTO t1 VALUES (5,'e',1.00105),(3,'f',1.79769313486232e+308)
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
GET DIAGNOSTICS CONDITION 1 @var47= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var47= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var48= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var48= ROW_NUMBER;
SELECT @var47, @var48; SELECT @var47, @var48;
--error ER_WRONG_VALUE_COUNT_ON_ROW --error ER_WRONG_VALUE_COUNT_ON_ROW
INSERT INTO t1 VALUES (5,'e',1.00105), (3,'i') INSERT INTO t1 VALUES (5,'e',1.00105), (3,'i')
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
GET DIAGNOSTICS CONDITION 1 @var49= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var49= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var50= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var50= ROW_NUMBER;
SELECT @var49, @var50; SELECT @var49, @var50;
--error ER_TRUNCATED_WRONG_VALUE --error ER_TRUNCATED_WRONG_VALUE
INSERT INTO t1 VALUES (3, CAST(123 AS CHAR(1)), 1.00103) INSERT INTO t1 VALUES (3, CAST(123 AS CHAR(1)), 1.00103)
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
GET DIAGNOSTICS CONDITION 1 @var51= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var51= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var52= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var52= ROW_NUMBER;
SELECT @var51, @var52; SELECT @var51, @var52;
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD --error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
INSERT INTO t1 VALUES ('x','foo',1.0203) INSERT INTO t1 VALUES ('x','foo',1.0203)
ON DUPLICATE KEY UPDATE val1='c'; ON DUPLICATE KEY UPDATE val1='c';
GET DIAGNOSTICS CONDITION 1 @var53= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var53= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var54= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var54= ROW_NUMBER;
SELECT @var53, @var54; SELECT @var53, @var54;
--error ER_OPERAND_COLUMNS --error ER_OPERAND_COLUMNS
INSERT INTO t1 VALUES ((13,'m',1.0113)) ON DUPLICATE KEY UPDATE val1='c'; INSERT INTO t1 VALUES ((13,'m',1.0113)) ON DUPLICATE KEY UPDATE val1='c';
GET DIAGNOSTICS CONDITION 1 @var55= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var55= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var56= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var56= ROW_NUMBER;
SELECT @var55, @var56; SELECT @var55, @var56;
INSERT INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (2/0,'p',1.00102) INSERT INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (2/0,'p',1.00102)
ON DUPLICATE KEY UPDATE val1='b'; ON DUPLICATE KEY UPDATE val1='b';
GET DIAGNOSTICS CONDITION 1 @var57= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var57= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var58= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var58= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var59= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var59= ROW_NUMBER;
SELECT @var57, @var58, @var59; SELECT @var57, @var58, @var59;
--error ER_DUP_ENTRY --error ER_DUP_ENTRY
INSERT INTO t1 VALUES (1,'e',1.0),(5,'e',1.0),(5,'f',1.7) INSERT INTO t1 VALUES (1,'e',1.0),(5,'e',1.0),(5,'f',1.7)
ON DUPLICATE KEY UPDATE id1='1'; ON DUPLICATE KEY UPDATE id1='1';
GET DIAGNOSTICS CONDITION 1 @var60= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var60= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var61= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var61= ROW_NUMBER;
SELECT @var60, @var61; SELECT @var60, @var61;
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
...@@ -1074,46 +1074,46 @@ INSERT INTO t1 SELECT id2, val2, d2 FROM t2; ...@@ -1074,46 +1074,46 @@ INSERT INTO t1 SELECT id2, val2, d2 FROM t2;
--error ER_DUP_ENTRY --error ER_DUP_ENTRY
INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1; INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1;
GET DIAGNOSTICS CONDITION 1 @var62= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var62= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var63= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var63= ROW_NUMBER;
SELECT @var62, @var63; SELECT @var62, @var63;
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD --error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
INSERT INTO t1 SELECT id2, val2, p2 from t2; INSERT INTO t1 SELECT id2, val2, p2 from t2;
GET DIAGNOSTICS CONDITION 1 @var64= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var64= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var65= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var65= ROW_NUMBER;
SELECT @var64, @var65; SELECT @var64, @var65;
--error ER_WRONG_VALUE_COUNT_ON_ROW --error ER_WRONG_VALUE_COUNT_ON_ROW
INSERT INTO t1 SELECT id2, val2 FROM t2; INSERT INTO t1 SELECT id2, val2 FROM t2;
GET DIAGNOSTICS CONDITION 1 @var66= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var66= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var67= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var67= ROW_NUMBER;
SELECT @var66, @var67; SELECT @var66, @var67;
INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)')); INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)'));
--error ER_TRUNCATED_WRONG_VALUE --error ER_TRUNCATED_WRONG_VALUE
INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4; INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4;
GET DIAGNOSTICS CONDITION 1 @var68= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var68= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var69= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var69= ROW_NUMBER;
SELECT @var68, @var69; SELECT @var68, @var69;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2; INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2;
GET DIAGNOSTICS CONDITION 1 @var70= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var70= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var71= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var71= ROW_NUMBER;
SELECT @var70, @var71; SELECT @var70, @var71;
--error ER_DIVISION_BY_ZERO --error ER_DIVISION_BY_ZERO
INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2; INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2;
GET DIAGNOSTICS CONDITION 1 @var72= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var72= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var73= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var73= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var74= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var74= ROW_NUMBER;
SELECT @var72, @var73, @var74; SELECT @var72, @var73, @var74;
DROP TABLE t1,t2; DROP TABLE t1,t2;
--echo # Checking ERROR_INDEX in STORED PROCEDURE for INSERT --echo # Checking ROW_NUMBER in STORED PROCEDURE for INSERT
CREATE TABLE t1(id1 INT PRIMARY KEY); CREATE TABLE t1(id1 INT PRIMARY KEY);
...@@ -1128,8 +1128,8 @@ BEGIN ...@@ -1128,8 +1128,8 @@ BEGIN
INSERT INTO t1 VALUES (1),(2); INSERT INTO t1 VALUES (1),(2);
INSERT IGNORE INTO t1 VALUES(2); INSERT IGNORE INTO t1 VALUES(2);
GET DIAGNOSTICS CONDITION 1 var75= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 var75= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 var76= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 var76= ROW_NUMBER;
SELECT var75, var76; SELECT var75, var76;
...@@ -1141,12 +1141,12 @@ DELIMITER ;| ...@@ -1141,12 +1141,12 @@ DELIMITER ;|
CALL proc1(); CALL proc1();
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
--echo # Checking ERROR_INDEX in PREPARED STATEMENTS for INSERT --echo # Checking ROW_NUMBER in PREPARED STATEMENTS for INSERT
INSERT INTO t1 VALUES (1), (2), (3); INSERT INTO t1 VALUES (1), (2), (3);
INSERT IGNORE INTO t1 VALUES(2),(3),(4); INSERT IGNORE INTO t1 VALUES(2),(3),(4);
PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var77= ERROR_INDEX"; PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var77= ROW_NUMBER";
EXECUTE stmt1; EXECUTE stmt1;
SELECT @var77; SELECT @var77;
...@@ -1166,43 +1166,43 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE); ...@@ -1166,43 +1166,43 @@ CREATE TABLE t2(id2 INT PRIMARY KEY, val2 VARCHAR(10), d2 DOUBLE);
REPLACE INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103); REPLACE INTO t1 VALUES(1,'a',1.00101), (2,'b',1.00102), (3,'c',1.00103);
REPLACE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102); REPLACE INTO t1 VALUES (4,'d',1.00104),(1,'a',1.00101),(2,'b',1.00102);
GET DIAGNOSTICS CONDITION 1 @var78= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var78= ROW_NUMBER;
SELECT @var78; SELECT @var78;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
REPLACE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308); REPLACE INTO t1 VALUES (5,'e',1.00105),(6,'f',1.79769313486232e+308);
GET DIAGNOSTICS CONDITION 1 @var79= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var79= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var80= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var80= ROW_NUMBER;
SELECT @var79, @var80; SELECT @var79, @var80;
--error ER_WRONG_VALUE_COUNT_ON_ROW --error ER_WRONG_VALUE_COUNT_ON_ROW
REPLACE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j'); REPLACE INTO t1 VALUES (7,'g',1.00107),(8,'h',1.00108),(9,'i'),(10,'j');
GET DIAGNOSTICS CONDITION 1 @var81= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var81= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var82= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var82= ROW_NUMBER;
SELECT @var81, @var82; SELECT @var81, @var82;
--error ER_TRUNCATED_WRONG_VALUE --error ER_TRUNCATED_WRONG_VALUE
REPLACE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109); REPLACE INTO t1 VALUES (9,CAST(123 AS CHAR(1)),1.00109);
GET DIAGNOSTICS CONDITION 1 @var83= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var83= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var84= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var84= ROW_NUMBER;
SELECT @var83, @var84; SELECT @var83, @var84;
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD --error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
REPLACE INTO t1 VALUES ('x','foo',1.0203); REPLACE INTO t1 VALUES ('x','foo',1.0203);
GET DIAGNOSTICS CONDITION 1 @var85= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var85= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var86= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var86= ROW_NUMBER;
SELECT @var85, @var86; SELECT @var85, @var86;
--error ER_OPERAND_COLUMNS --error ER_OPERAND_COLUMNS
REPLACE INTO t1 VALUES ((13,'m',1.0113)); REPLACE INTO t1 VALUES ((13,'m',1.0113));
GET DIAGNOSTICS CONDITION 1 @var87= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var87= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var88= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var88= ROW_NUMBER;
SELECT @var87, @var88; SELECT @var87, @var88;
REPLACE INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116); REPLACE INTO t1 VALUES (14,'n',1.0114), (15,'o',1.0115), (16/0,'p',1.0116);
GET DIAGNOSTICS CONDITION 1 @var89= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var89= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var90= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var90= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var91= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var91= ROW_NUMBER;
SELECT @var89, @var90, @var91; SELECT @var89, @var90, @var91;
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
...@@ -1214,34 +1214,34 @@ REPLACE INTO t1 SET id1=2, val1='b', d1=1.00102; ...@@ -1214,34 +1214,34 @@ REPLACE INTO t1 SET id1=2, val1='b', d1=1.00102;
REPLACE INTO t1 SET id1=3, val1='c', d1=1.00103; REPLACE INTO t1 SET id1=3, val1='c', d1=1.00103;
REPLACE INTO t1 SET id1=1, val1='a', d1=1.00101; REPLACE INTO t1 SET id1=1, val1='a', d1=1.00101;
GET DIAGNOSTICS CONDITION 1 @var92= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var92= ROW_NUMBER;
SELECT @var92; SELECT @var92;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
REPLACE INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308); REPLACE INTO t1 SET id1=6, val1='f', d1=1.79769313486232e+308);
GET DIAGNOSTICS CONDITION 1 @var93= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var93= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var94= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var94= ROW_NUMBER;
SELECT @var93, @var94; SELECT @var93, @var94;
--error ER_TRUNCATED_WRONG_VALUE --error ER_TRUNCATED_WRONG_VALUE
REPLACE INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109; REPLACE INTO t1 SET id1=9, val1=CAST(123 AS CHAR(1)), d1=1.00109;
GET DIAGNOSTICS CONDITION 1 @var95= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var95= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var96= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var96= ROW_NUMBER;
SELECT @var95, @var96; SELECT @var95, @var96;
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD --error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
REPLACE INTO t1 SET id1='x', val1='foo', d1=1.0203; REPLACE INTO t1 SET id1='x', val1='foo', d1=1.0203;
GET DIAGNOSTICS CONDITION 1 @var97= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var97= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var98= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var98= ROW_NUMBER;
SELECT @var97, @var98; SELECT @var97, @var98;
--error ER_DIVISION_BY_ZERO --error ER_DIVISION_BY_ZERO
REPLACE INTO t1 SET id1=3/0, val1='p', d1=1.0116; REPLACE INTO t1 SET id1=3/0, val1='p', d1=1.0116;
GET DIAGNOSTICS CONDITION 1 @var99= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var99= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var100= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var100= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var101= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var101= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 4 @var102= ERROR_INDEX; GET DIAGNOSTICS CONDITION 4 @var102= ROW_NUMBER;
SELECT @var99, @var100, @var101, @var102; SELECT @var99, @var100, @var101, @var102;
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
...@@ -1262,46 +1262,46 @@ INSERT INTO t1 SELECT id2, val2, d2 FROM t2; ...@@ -1262,46 +1262,46 @@ INSERT INTO t1 SELECT id2, val2, d2 FROM t2;
--error ER_DUP_ENTRY --error ER_DUP_ENTRY
INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1; INSERT INTO t1 SELECT id2, val2, d2 FROM t2 WHERE id2=1;
GET DIAGNOSTICS CONDITION 1 @var103= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var103= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var104= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var104= ROW_NUMBER;
SELECT @var103, @var104; SELECT @var103, @var104;
--error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD --error ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
INSERT INTO t1 SELECT id2, val2, p2 from t2; INSERT INTO t1 SELECT id2, val2, p2 from t2;
GET DIAGNOSTICS CONDITION 1 @var105= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var105= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var106= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var106= ROW_NUMBER;
SELECT @var105, @var106; SELECT @var105, @var106;
--error ER_WRONG_VALUE_COUNT_ON_ROW --error ER_WRONG_VALUE_COUNT_ON_ROW
INSERT INTO t1 SELECT id2, val2 FROM t2; INSERT INTO t1 SELECT id2, val2 FROM t2;
GET DIAGNOSTICS CONDITION 1 @var107= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var107= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var108= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var108= ROW_NUMBER;
SELECT @var107, @var108; SELECT @var107, @var108;
INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)')); INSERT INTO t2 VALUES(4,'a',1.00101,PointFromText('POINT(20 10)'));
--error ER_TRUNCATED_WRONG_VALUE --error ER_TRUNCATED_WRONG_VALUE
INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4; INSERT INTO t1 SELECT id2, CAST(123 AS CHAR(1)), d2 FROM t2 WHERE id2=4;
GET DIAGNOSTICS CONDITION 1 @var109= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var109= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var110= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var110= ROW_NUMBER;
SELECT @var109, @var110; SELECT @var109, @var110;
--error ER_ILLEGAL_VALUE_FOR_TYPE --error ER_ILLEGAL_VALUE_FOR_TYPE
INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2; INSERT INTO t1 SELECT id2, val2, 1.79769313486232e+308 FROM t2;
GET DIAGNOSTICS CONDITION 1 @var111= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var111= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var112= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var112= ROW_NUMBER;
SELECT @var111, @var112; SELECT @var111, @var112;
--error ER_DIVISION_BY_ZERO --error ER_DIVISION_BY_ZERO
INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2; INSERT INTO t1 SELECT id2/0, val2, d2 FROM t2;
GET DIAGNOSTICS CONDITION 1 @var113= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var113= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 2 @var114= ERROR_INDEX; GET DIAGNOSTICS CONDITION 2 @var114= ROW_NUMBER;
GET DIAGNOSTICS CONDITION 3 @var115= ERROR_INDEX; GET DIAGNOSTICS CONDITION 3 @var115= ROW_NUMBER;
SELECT @var113, @var114, @var115; SELECT @var113, @var114, @var115;
DROP TABLE t1,t2; DROP TABLE t1,t2;
--echo # Checking ERROR_INDEX in STORED PROCEDURE --echo # Checking ROW_NUMBER in STORED PROCEDURE
CREATE TABLE t1(id1 INT PRIMARY KEY); CREATE TABLE t1(id1 INT PRIMARY KEY);
...@@ -1314,7 +1314,7 @@ BEGIN ...@@ -1314,7 +1314,7 @@ BEGIN
REPLACE INTO t1 VALUES (1),(2); REPLACE INTO t1 VALUES (1),(2);
GET DIAGNOSTICS CONDITION 1 var116= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 var116= ROW_NUMBER;
SELECT var116; SELECT var116;
...@@ -1326,11 +1326,11 @@ DELIMITER ;| ...@@ -1326,11 +1326,11 @@ DELIMITER ;|
CALL proc1(); CALL proc1();
TRUNCATE TABLE t1; TRUNCATE TABLE t1;
--echo # Checking ERROR_INDEX in PREPARED STATEMENTS --echo # Checking ROW_NUMBER in PREPARED STATEMENTS
REPLACE INTO t1 VALUES (1), (2), (3); REPLACE INTO t1 VALUES (1), (2), (3);
PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var117= ERROR_INDEX"; PREPARE stmt1 FROM "GET DIAGNOSTICS CONDITION 2 @var117= ROW_NUMBER";
EXECUTE stmt1; EXECUTE stmt1;
SELECT @var117; SELECT @var117;
...@@ -1339,7 +1339,7 @@ DROP PREPARE stmt1; ...@@ -1339,7 +1339,7 @@ DROP PREPARE stmt1;
DROP TABLE t1; DROP TABLE t1;
--echo # --echo #
--echo # Checking that error_index is only for errors with rows/values --echo # Checking that ROW_NUMBER is only for errors with rows/values
--echo # --echo #
--echo # INSERT STATEMENT --echo # INSERT STATEMENT
...@@ -1350,7 +1350,7 @@ CREATE VIEW v AS SELECT t1.id1 AS A, t2.id2 AS b FROM t1,t2; ...@@ -1350,7 +1350,7 @@ CREATE VIEW v AS SELECT t1.id1 AS A, t2.id2 AS b FROM t1,t2;
--error ER_FIELD_SPECIFIED_TWICE --error ER_FIELD_SPECIFIED_TWICE
INSERT INTO t1(id1, id1) VALUES (1,1); INSERT INTO t1(id1, id1) VALUES (1,1);
GET DIAGNOSTICS CONDITION 1 @var118= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var118= ROW_NUMBER;
SELECT @var118; SELECT @var118;
delimiter |; delimiter |;
...@@ -1363,34 +1363,34 @@ delimiter ;| ...@@ -1363,34 +1363,34 @@ delimiter ;|
--error ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG --error ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
INSERT INTO t1 VALUES (1), (f1()); INSERT INTO t1 VALUES (1), (f1());
GET DIAGNOSTICS CONDITION 1 @var119= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var119= ROW_NUMBER;
SELECT @var119; SELECT @var119;
--error ER_BAD_FIELD_ERROR --error ER_BAD_FIELD_ERROR
INSERT INTO t1 VALUES (1) RETURNING id2; INSERT INTO t1 VALUES (1) RETURNING id2;
GET DIAGNOSTICS CONDITION 1 @var120= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var120= ROW_NUMBER;
SELECT @var120; SELECT @var120;
--error ER_BAD_FIELD_ERROR --error ER_BAD_FIELD_ERROR
INSERT INTO t1(id2) VALUES(1); INSERT INTO t1(id2) VALUES(1);
GET DIAGNOSTICS CONDITION 1 @var121= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var121= ROW_NUMBER;
SELECT @var121; SELECT @var121;
--error ER_VIEW_NO_INSERT_FIELD_LIST --error ER_VIEW_NO_INSERT_FIELD_LIST
INSERT INTO v VALUES(1,2); INSERT INTO v VALUES(1,2);
GET DIAGNOSTICS CONDITION 1 @var122= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var122= ROW_NUMBER;
SELECT @var122; SELECT @var122;
--error ER_VIEW_MULTIUPDATE --error ER_VIEW_MULTIUPDATE
INSERT INTO v(a,b) VALUES (1,2); INSERT INTO v(a,b) VALUES (1,2);
GET DIAGNOSTICS CONDITION 1 @var123= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var123= ROW_NUMBER;
SELECT @var123; SELECT @var123;
--echo # REPLACE STATEMENT --echo # REPLACE STATEMENT
--error ER_FIELD_SPECIFIED_TWICE --error ER_FIELD_SPECIFIED_TWICE
REPLACE INTO t1(id1, id1) VALUES (1,1); REPLACE INTO t1(id1, id1) VALUES (1,1);
GET DIAGNOSTICS CONDITION 1 @var124= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var124= ROW_NUMBER;
SELECT @var124; SELECT @var124;
delimiter |; delimiter |;
...@@ -1403,27 +1403,27 @@ delimiter ;| ...@@ -1403,27 +1403,27 @@ delimiter ;|
--error ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG --error ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
REPLACE INTO t1 VALUES (1), (f2()); REPLACE INTO t1 VALUES (1), (f2());
GET DIAGNOSTICS CONDITION 1 @var125= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var125= ROW_NUMBER;
SELECT @var125; SELECT @var125;
--error ER_BAD_FIELD_ERROR --error ER_BAD_FIELD_ERROR
REPLACE INTO t1 VALUES (1) RETURNING id2; REPLACE INTO t1 VALUES (1) RETURNING id2;
GET DIAGNOSTICS CONDITION 1 @var126= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var126= ROW_NUMBER;
SELECT @var126; SELECT @var126;
--error ER_BAD_FIELD_ERROR --error ER_BAD_FIELD_ERROR
REPLACE INTO t1(id2) VALUES(1); REPLACE INTO t1(id2) VALUES(1);
GET DIAGNOSTICS CONDITION 1 @var127= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var127= ROW_NUMBER;
SELECT @var127; SELECT @var127;
--error ER_VIEW_NO_INSERT_FIELD_LIST --error ER_VIEW_NO_INSERT_FIELD_LIST
REPLACE INTO v VALUES(1,2); REPLACE INTO v VALUES(1,2);
GET DIAGNOSTICS CONDITION 1 @var128= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var128= ROW_NUMBER;
SELECT @var128; SELECT @var128;
--error ER_VIEW_MULTIUPDATE --error ER_VIEW_MULTIUPDATE
REPLACE INTO v(a,b) VALUES (1,2); REPLACE INTO v(a,b) VALUES (1,2);
GET DIAGNOSTICS CONDITION 1 @var129= ERROR_INDEX; GET DIAGNOSTICS CONDITION 1 @var129= ROW_NUMBER;
SELECT @var129; SELECT @var129;
DROP TABLE t1,t2; DROP TABLE t1,t2;
......
...@@ -8,5 +8,5 @@ SELECT 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1 ...@@ -8,5 +8,5 @@ SELECT 1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1+1
#################################### ####################################
SELECT event_name, digest, digest_text, sql_text FROM events_statements_history_long; SELECT event_name, digest, digest_text, sql_text FROM events_statements_history_long;
event_name digest digest_text sql_text event_name digest digest_text sql_text
statement/sql/select dfe1e2b52a48f7294a6385d229770021 SELECT ? + ? + SELECT ... statement/sql/select ca9181d6d668396d467dd974f58a9402 SELECT ? + ? + SELECT ...
statement/sql/truncate 6aa520d69a5b4c9035650e7deeae48fd TRUNCATE TABLE truncat... statement/sql/truncate 460cb5329baea0e4242059cfda01d1d7 TRUNCATE TABLE truncat...
...@@ -222,7 +222,6 @@ SYMBOL symbols[] = { ...@@ -222,7 +222,6 @@ SYMBOL symbols[] = {
{ "ENUM", SYM(ENUM)}, { "ENUM", SYM(ENUM)},
{ "ERROR", SYM(ERROR_SYM)}, { "ERROR", SYM(ERROR_SYM)},
{ "ERRORS", SYM(ERRORS)}, { "ERRORS", SYM(ERRORS)},
{ "ERROR_INDEX", SYM(ERROR_INDEX_SYM)},
{ "ESCAPE", SYM(ESCAPE_SYM)}, { "ESCAPE", SYM(ESCAPE_SYM)},
{ "ESCAPED", SYM(ESCAPED)}, { "ESCAPED", SYM(ESCAPED)},
{ "EVENT", SYM(EVENT_SYM)}, { "EVENT", SYM(EVENT_SYM)},
...@@ -569,6 +568,8 @@ SYMBOL symbols[] = { ...@@ -569,6 +568,8 @@ SYMBOL symbols[] = {
{ "ROWTYPE", SYM(ROWTYPE_MARIADB_SYM)}, { "ROWTYPE", SYM(ROWTYPE_MARIADB_SYM)},
{ "ROW_COUNT", SYM(ROW_COUNT_SYM)}, { "ROW_COUNT", SYM(ROW_COUNT_SYM)},
{ "ROW_FORMAT", SYM(ROW_FORMAT_SYM)}, { "ROW_FORMAT", SYM(ROW_FORMAT_SYM)},
/** sql_function and condition_property_name for GET DIAGNOSTICS */
{ "ROW_NUMBER", SYM(ROW_NUMBER_SYM)},
{ "RTREE", SYM(RTREE_SYM)}, { "RTREE", SYM(RTREE_SYM)},
{ "SAVEPOINT", SYM(SAVEPOINT_SYM)}, { "SAVEPOINT", SYM(SAVEPOINT_SYM)},
{ "SCHEDULE", SYM(SCHEDULE_SYM)}, { "SCHEDULE", SYM(SCHEDULE_SYM)},
...@@ -783,7 +784,6 @@ SYMBOL sql_functions[] = { ...@@ -783,7 +784,6 @@ SYMBOL sql_functions[] = {
{ "PERCENTILE_CONT", SYM(PERCENTILE_CONT_SYM)}, { "PERCENTILE_CONT", SYM(PERCENTILE_CONT_SYM)},
{ "PERCENTILE_DISC", SYM(PERCENTILE_DISC_SYM)}, { "PERCENTILE_DISC", SYM(PERCENTILE_DISC_SYM)},
{ "RANK", SYM(RANK_SYM)}, { "RANK", SYM(RANK_SYM)},
{ "ROW_NUMBER", SYM(ROW_NUMBER_SYM)},
{ "SESSION_USER", SYM(USER_SYM)}, { "SESSION_USER", SYM(USER_SYM)},
{ "STD", SYM(STD_SYM)}, { "STD", SYM(STD_SYM)},
{ "STDDEV", SYM(STD_SYM)}, { "STDDEV", SYM(STD_SYM)},
......
...@@ -306,7 +306,8 @@ class Sql_condition_items ...@@ -306,7 +306,8 @@ class Sql_condition_items
/** SQL CURSOR_NAME condition item. */ /** SQL CURSOR_NAME condition item. */
String m_cursor_name; String m_cursor_name;
ulong m_error_index; /** SQL ROW_NUMBER condition item. */
ulong m_row_number;
Sql_condition_items() Sql_condition_items()
:m_class_origin((const char*) NULL, 0, & my_charset_utf8mb3_bin), :m_class_origin((const char*) NULL, 0, & my_charset_utf8mb3_bin),
...@@ -319,7 +320,7 @@ class Sql_condition_items ...@@ -319,7 +320,7 @@ class Sql_condition_items
m_table_name((const char*) NULL, 0, & my_charset_utf8mb3_bin), m_table_name((const char*) NULL, 0, & my_charset_utf8mb3_bin),
m_column_name((const char*) NULL, 0, & my_charset_utf8mb3_bin), m_column_name((const char*) NULL, 0, & my_charset_utf8mb3_bin),
m_cursor_name((const char*) NULL, 0, & my_charset_utf8mb3_bin), m_cursor_name((const char*) NULL, 0, & my_charset_utf8mb3_bin),
m_error_index(0) m_row_number(0)
{ } { }
void clear() void clear()
...@@ -334,7 +335,7 @@ class Sql_condition_items ...@@ -334,7 +335,7 @@ class Sql_condition_items
m_table_name.length(0); m_table_name.length(0);
m_column_name.length(0); m_column_name.length(0);
m_cursor_name.length(0); m_cursor_name.length(0);
m_error_index= 0; m_row_number= 0;
} }
}; };
...@@ -446,7 +447,7 @@ class Sql_condition : public Sql_alloc, ...@@ -446,7 +447,7 @@ class Sql_condition : public Sql_alloc,
DBUG_ASSERT(value.get_sql_errno() != 0); DBUG_ASSERT(value.get_sql_errno() != 0);
DBUG_ASSERT(msg != NULL); DBUG_ASSERT(msg != NULL);
set_builtin_message_text(msg); set_builtin_message_text(msg);
m_error_index= current_row_for_warning; m_row_number= current_row_for_warning;
} }
/** Destructor. */ /** Destructor. */
......
...@@ -338,8 +338,8 @@ Condition_information_item::get_value(THD *thd, const Sql_condition *cond) ...@@ -338,8 +338,8 @@ Condition_information_item::get_value(THD *thd, const Sql_condition *cond)
str.set_ascii(cond->get_sqlstate(), strlen(cond->get_sqlstate())); str.set_ascii(cond->get_sqlstate(), strlen(cond->get_sqlstate()));
value= make_utf8_string_item(thd, &str); value= make_utf8_string_item(thd, &str);
break; break;
case ERROR_INDEX: case ROW_NUMBER:
value= new (thd->mem_root) Item_uint(thd, cond->m_error_index); value= new (thd->mem_root) Item_uint(thd, cond->m_row_number);
} }
DBUG_RETURN(value); DBUG_RETURN(value);
......
...@@ -255,7 +255,7 @@ class Condition_information_item : public Diagnostics_information_item ...@@ -255,7 +255,7 @@ class Condition_information_item : public Diagnostics_information_item
MESSAGE_TEXT, MESSAGE_TEXT,
MYSQL_ERRNO, MYSQL_ERRNO,
RETURNED_SQLSTATE, RETURNED_SQLSTATE,
ERROR_INDEX ROW_NUMBER
}; };
/** /**
......
...@@ -974,7 +974,6 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize); ...@@ -974,7 +974,6 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
%token <kwd> MUTEX_SYM %token <kwd> MUTEX_SYM
%token <kwd> MYSQL_SYM %token <kwd> MYSQL_SYM
%token <kwd> MYSQL_ERRNO_SYM %token <kwd> MYSQL_ERRNO_SYM
%token <kwd> ERROR_INDEX_SYM
%token <kwd> NAMES_SYM /* SQL-2003-N */ %token <kwd> NAMES_SYM /* SQL-2003-N */
%token <kwd> NAME_SYM /* SQL-2003-N */ %token <kwd> NAME_SYM /* SQL-2003-N */
%token <kwd> NATIONAL_SYM /* SQL-2003-R */ %token <kwd> NATIONAL_SYM /* SQL-2003-R */
...@@ -3631,8 +3630,8 @@ condition_information_item_name: ...@@ -3631,8 +3630,8 @@ condition_information_item_name:
{ $$= Condition_information_item::MYSQL_ERRNO; } { $$= Condition_information_item::MYSQL_ERRNO; }
| RETURNED_SQLSTATE_SYM | RETURNED_SQLSTATE_SYM
{ $$= Condition_information_item::RETURNED_SQLSTATE; } { $$= Condition_information_item::RETURNED_SQLSTATE; }
| ERROR_INDEX_SYM | ROW_NUMBER_SYM
{ $$= Condition_information_item::ERROR_INDEX; } { $$= Condition_information_item::ROW_NUMBER; }
; ;
sp_decl_ident: sp_decl_ident:
...@@ -15664,7 +15663,6 @@ keyword_sp_var_and_label: ...@@ -15664,7 +15663,6 @@ keyword_sp_var_and_label:
| INVOKER_SYM | INVOKER_SYM
| IMPORT | IMPORT
| INDEXES | INDEXES
| ERROR_INDEX_SYM
| INITIAL_SIZE_SYM | INITIAL_SIZE_SYM
| IO_SYM | IO_SYM
| IPC_SYM | IPC_SYM
......
...@@ -21580,7 +21580,7 @@ void test_mdev_10075() ...@@ -21580,7 +21580,7 @@ void test_mdev_10075()
mysql_stmt_close(stmt); mysql_stmt_close(stmt);
rc= mysql_query(mysql, "GET DIAGNOSTICS CONDITION 1 @var1 = ERROR_INDEX"); rc= mysql_query(mysql, "GET DIAGNOSTICS CONDITION 1 @var1 = ROW_NUMBER");
myquery(rc); myquery(rc);
rc= mysql_query(mysql, "SELECT @var1"); rc= mysql_query(mysql, "SELECT @var1");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment