DB2 - Problem description
Problem IC95465 | Status: Closed |
LOGICAL OPERATORS AND, OR MAY CAUSE SQL0104N ERROR WHEN USED IN PL/SQL INITIALIZER EXPRESSION | |
product: | |
DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
Problem description: | |
Under some circumstances, the binary operators AND and OR are disallowed in PL/SQL initializer expressions, resulting in syntax error SQL0104N. For example: create procedure test(N in number) as is_valid boolean := N >= 0.0 and N < 10.0; begin -- ... end; DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned: SQL0104N An unexpected token ">=" was found following " is_valid boolean := N >= 0.0 and N < 10.0;". Expected tokens may include: "';'". LINE NUMBER=2. SQLSTATE=42601 | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Update to DB2 Version 10.5 Fix Pack 3. * **************************************************************** | |
Local Fix: | |
As a workaround, enclose the initializer expression in parentheses; for example: create procedure test(N in number) as is_valid boolean := (N >= 0.0 and N < 10.0); begin -- ... end; | |
available fix packs: | |
DB2 Version 10.5 Fix Pack 3 for Linux, UNIX, and Windows | |
Solution | |
This problem is fixed in DB2 Version 10.5 Fix Pack 3, Binary operators are allowed in initializer expression in PL/SQL | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 27.08.2013 27.02.2014 27.02.2014 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
10.5.0.3 | |
10.5.0.3 |