Neueste VersionenFixList
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Haben Sie Probleme? - Kontaktieren Sie uns.
Kostenlos registrieren anmeldung-x26
Kontaktformular kontakt-x26

DB2 - Problembeschreibung

Problem IC63140 Status: Geschlossen

PSEUDO COLUMN ROWID AND SCALAR FUNCTIONS RID_BIT/RID DOES NOT RETURN
CORRECT ROWID FORMAT ON GLOBAL TEMPORARY TABLE(GTT).

Produkt:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problembeschreibung:
Pseudo column ROWID and scalar functions RID_BIT()/RID() returns 
the row identifier with table information to protect from 
inadvertently using it with a different table. The extra table 
information is not returned on global temporary tables(GTT). 
 
Here is an example: 
 
declare global temporary table dgtt(C1 int) on commit preserve 
rows; 
insert into session.dgtt values 1, 2, 3; 
select rowid, c1 from session.dgtt; 
select rowid, c1 from cgtt1; 
 
1                                   C1 
----------------------------------- ----------- 
x'04000000000000000000000000000000'           1 
x'05000000000000000000000000000000'           2 
x'06000000000000000000000000000000'           3 
 
3 record(s) selected. 
 
update session.dgtt set c1=10 where 
ROWID=x'04000000000000000000000000000000'; 
 
SQL0100W  No row was found for FETCH, UPDATE or DELETE; or the 
result of a 
query is an empty table.  SQLSTATE=02000 
 
The rowid returned from select was incorrect because it does 
notcontain the extra table information and thus the update 
failed to find the corresponding row and returned SQL100W.
Problem-Zusammenfassung:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All.                                                         * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* Pseudo column ROWID and scalar functions RID_BIT()/RID()     * 
* returns the row identifier with table information to protect * 
* from inadvertently using it with a different table. The      * 
* extra table information is not returned on global temporary  * 
* tables(GTT).                                                 * 
*                                                              * 
* Here is an example:                                          * 
*                                                              * 
* declare global temporary table dgtt(C1 int) on commit        * 
* preserve  rows;                                              * 
* insert into session.dgtt values 1, 2, 3;                     * 
* select rowid, c1 from session.dgtt;                          * 
* select rowid, c1 from cgtt1;                                 * 
*                                                              * 
* 1                                   C1                       * 
* ----------------------------------- -----------              * 
* x'04000000000000000000000000000000'           1              * 
* x'05000000000000000000000000000000'           2              * 
* x'06000000000000000000000000000000'           3              * 
*                                                              * 
* 3 record(s) selected.                                        * 
*                                                              * 
* update session.dgtt set c1=10 where                          * 
* ROWID=x'04000000000000000000000000000000';                   * 
*                                                              * 
* SQL0100W  No row was found for FETCH, UPDATE or DELETE; or   * 
* the result of a                                              * 
* query is an empty table.  SQLSTATE=02000                     * 
*                                                              * 
* The rowid returned from select was incorrect because it does * 
* notcontain the extra table information and thus the update   * 
* failed to find the corresponding row and returned SQL100W.   * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to version 9.7 fixpack 1.                            * 
****************************************************************
Local-Fix:
verfügbare FixPacks:
DB2 Version 9.7 Fix Pack 1 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 7 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 6 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 8 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 10 for Linux, UNIX, and Windows

Lösung
This problem is first fixed in version 9.7 fixpack 1.
Workaround
keiner bekannt / siehe Local-Fix
Bug-Verfolgung
Vorgänger  : APAR is sysrouted TO one or more of the following: IC63673 
Nachfolger : 
Weitere Daten
Datum - Problem gemeldet    :
Datum - Problem geschlossen :
Datum - der letzten Änderung:
11.09.2009
04.01.2010
04.01.2010
Problem behoben ab folgender Versionen (IBM BugInfos)
9.7.FP1
Problem behoben lt. FixList in der Version
9.7.0.1 FixList