Problem Note 16428: DBSLICEPARM creates incorrect syntax when DB2DECPT=,
When using DBSLICEPARM=, incorrect SQL code will be generated if
DB2DECPT=, is specified. When DBSLICEPARM= is used, SAS uses the MOD
function to break up the query into multiple threads. When DB2DECPT=,
DB2 requires a space to follow a comma in a function call like MOD.
This does not occur resulting in DB2 issuing an error message similar
to:
ERROR:Threaded read failed with DB2 message: DSNT408I SQLCODE = -104,
ERROR: ILLEGAL SYMBOL ",3". SOME SYMBOLS THAT MIGHT BE LEGAL ARE: ) ,
For example, if DBSLICEPARM=(ALL,3) is used SAS will pass over for one
of the threads a query similar to
select "col" from table where abs(mod("col",3))=2
DB2 requires a space after the comma and before the 3 so what SAS should
have issued is
select "col" from table where abs(mod("col", 3))=2
Select the Hot Fix tab in this note to access the hot fix for this issue.
Operating System and Release Information
SAS System | SAS/ACCESS Interface to DB2 | z/OS | 9.1 TS1M3 SP3 | 9.1 TS1M3 SP4 |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
Type: | Problem Note |
Priority: | high |
Topic: | SAS Reference ==> LIBNAME Engines Data Management ==> Data Sources ==> External Databases ==> DB2
|
Date Modified: | 2006-06-09 14:52:24 |
Date Created: | 2005-11-07 14:04:20 |