Details
-
Task
-
Status: Closed (View Workflow)
-
Blocker
-
Resolution: Fixed
-
None
Description
When executing a multi-row INSERT using array notation, i.e.:
INSERT INTO sometable VALUES(1,'a'),(2,'b'),(3,'c); |
If there is an error in this statement for example a PRIMARY KEY error, then there is no way of knowing which element in the array caused the error. This really limits the usefulness of array INSERTs which is an issue as this is a really good way to increase INSERT performance.
The suggestion is to add the ability to find the index of the value with an issue by adding a new function to the API. This also need to be made available through Stored Procedures so maybe it should be complemented with a SQL-function. In addition, one such function will also be necessary, for the same reason, for prepared statements.
Attachments
Issue Links
- causes
-
MDEV-26606 ROW_NUMBER property value isn't passed from inside a stored procedure
- Closed
-
MDEV-26610 ERROR_INDEX isn't seen in the error message
- Closed
-
MDEV-26611 ERROR_INDEX isn't intuitively clear
- Closed
-
MDEV-26635 ROW_NUMBER is not 0 for errors not caused because of rows
- Closed
-
MDEV-26654 ROW_NUMBER is wrong upon INSERT into Federated table
- Closed
-
MDEV-26681 ROW_NUMBER is not available within compound statement blocks
- Closed
-
MDEV-26684 Unexpected ROW_NUMBER in a condition raised by a diagnostics statement
- Closed
-
MDEV-26693 ROW_NUMBER is wrong upon INSERT or UPDATE on Spider table
- Closed
-
MDEV-26695 Number of an invalid row is not calculated for table value constructor
- Closed
-
MDEV-26698 Incorrect row number upon INSERT .. SELECT from the same table: rows are counted twice
- Closed
-
MDEV-26699 Row counter does not work consistently for Columnstore tables
- Open
-
MDEV-26702 Unexpected ROW_NUMBER upon SELECT from JSON_TABLE with erroneous JSON doc
- Open
-
MDEV-26830 Wrong ROW_NUMBER in diagnostics upon INSERT IGNORE with CHECK violation
- Closed
-
MDEV-26832 ROW_NUMBER in SIGNAL/RESIGNAL causes a syntax error
- Closed
-
MDEV-26836 ROW_NUMBER differs from the number in the error message upon ER_WARN_DATA_OUT_OF_RANGE
- Closed
-
MDEV-26841 ROW_NUMBER is not set and differs from the message upon ER_WRONG_VALUE_COUNT_ON_ROW for the 1st row
- Closed
-
MDEV-26842 ROW_NUMBER is not set and differs from the message upon WARN_DATA_TRUNCATED produced by inplace ALTER
- Closed
-
MDEV-26843 Inconsistent behavior of ROW_NUMBER upon resignalling from function
- In Review
-
MDEV-26844 DELETE returns ROW_NUMBER=1 for every row upon ER_TRUNCATED_WRONG_VALUE
- Closed
-
MDEV-26845 For unsupported statements ROW_NUMBER shows different values depending on previous events
- Open
-
MDEV-26848 ROW_NUMBER is wrong and differs from error message upon ER_CUT_VALUE_GROUP_CONCAT
- Open
-
MDEV-26878 Query failing with syntax error sets ROW_NUMBER to non-zero
- Closed
-
MDEV-26909 ROW_NUMBER and DELETE/UPDATE with ORDER BY
- Open