DB2 - Problem description
Problem IC94950 | Status: Closed |
FED: UPDATE NICKNAME FAILED WITH SQL1822N WITH "HY104 INVALID PRECISION VALUE" | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
Remote column on MSSQL Server is nvarchar or nchar and the local column type used to update the corresponding nickname is vargraphic, when the local column length is over than 2000, update nickname failed with SQL1822N with server error "HY104 Invalid precision value". UPDATE NICK1 SET ( C1 ) = ( select C1 from LTAB) DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned: SQL1822N Unexpected error code "HY104" received from data source "MSSQL2008_SERV". Associated text and tokens are "Invalid precision value". SQLSTATE=560BD To reproduce the problem: set passthru mssql2008_serv; CREATE TABLE RTAB(C1 nvarchar(4000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL); set passthru reset; CREATE NICKNAME NICK1 FOR <server_name>.<user_name>.RTAB; create LTAB (C1 vargraphic(2001)); insert into LTAB values ('the values is over 2000 characters '); UPDATE NICK1 SET ( C1 ) = ( select C1 from LTAB) DB21034E The command was processed as an SQL statement because it was not a valid Command Line Processor command. During SQL processing it returned: SQL1822N Unexpected error code "HY104" received from data source "MSSQL2008_SERV". Associated text and tokens are "Invalid precision value". SQLSTATE=560BD The error happens because the local column precision is calculated as the physical buffer length. If the column is a double byte type with length 2001, the precision will be 4002 which over the threshold of max permit value. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Update nickname failed with SQL1822N with "HY104 Invalid * * precision value" * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 v9.7 fix pace 9. * **************************************************************** | |
Local Fix: | |
Define the local column with length no larger than 2000. | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows | |
Solution | |
This problem is fixed in DB2 v9.7 fix pace 9. | |
Workaround | |
not known / see Local fix | |
BUG-Tracking | |
forerunner : APAR is sysrouted TO one or more of the following: IC95524 IC95657 follow-up : | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 16.08.2013 16.12.2013 16.12.2013 |
Problem solved at the following versions (IBM BugInfos) | |
9.0., 9.7. | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.7.0.9 | |
9.7.0.9 |