DB2 - Problem description
Problem IT18022 | Status: Closed |
A CORRELATED SCALAR SUBQUERY IN AN UPDATE STATEMENT MAY NOT CORRECTLY RETURN SQL0811N IF SPECIFIC REGISTRY IS SET | |
product: | |
DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
Problem description: | |
IF DB2COMPOPT= UPDATE_COMP db2set registry is set, then a correlated scalar subquery in an UPDATE statement may not correctly return SQL0811N. SQL0811N The result of a scalar fullselect, SELECT INTO statement, or VALUES INTO statement is more than one row. Assuming 2 rows in table B will match the same row of A: Case 1) Expects success but SQL0811N is returned UPDATE TEST.A A SET COLUMN_B = (SELECT COLUMN_B FROM TEST.B B WHERE A.COLUMN_A=B.COLUMN_A FETCH FIRST 1 ROWS ONLY) ; Case 2) Expects SQL0811N but it succeeds UPDATE TEST.A_COL A SET COLUMN_B = (SELECT COLUMN_B FROM TEST.B_COL B WHERE A.COLUMN_A=B.COLUMN_A ORDER BY COLUMN_A FETCH FIRST 2 ROWS ONLY) ; | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 10.5 Fix Pack 9 or higher * **************************************************************** | |
Local Fix: | |
Remove DB2COMPOPT= UPDATE_COMP registry variable. | |
Solution | |
First fixed in Db2 10.5 Fix Pack 9 | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 17.11.2016 29.09.2017 12.10.2017 |
Problem solved at the following versions (IBM BugInfos) | |
9.0. | |
Problem solved according to the fixlist(s) of the following version(s) |