Document Type | Troubleshooting
Category | Patch/Upgrade
Applicable Product Versions | 6FS06, 6FS07, 6FS06, 6FS07
Document Number | TPATS004
Issue
When changing the column size using the alter table ~ modify column statement, the error TBR-11025: Data is too long for the column occurs.
Reproduction Scenario
[ Create TEST TABLE ]
CREATE TABLE T243395
(
REC_KEY NUMBER NOT NULL
,MARC LONG
,CREATE_LIB CHAR(6)
,KDC_CLASS_NO VARCHAR(22)
)
/
INSERT INTO T243395 ( REC_KEY , MARC, KDC_CLASS_NO)
SELECT LEVEL ,
DBMS_RANDOM.STRING('U', 10000) ,
DBMS_RANDOM.STRING('U', 22) FROM DUAL
CONNECT BY LEVEL < 100
/[ Before Patch ]
SQL> ALTER TABLE T243395 MODIFY KDC_CLASS_NO VARCHAR(50); TBR-11025: Data is too long for the column.
Cause
During the modify column operation, the segment column number of the column to be changed is passed to an internal function that connects with the data API. The received segment column number is incorrectly processed as the column number, causing the issue.
Solutions
The internal function has been updated to handle the segment column number correctly. (Applied Patch: 243395)
[ After Patch ]
SQL> ALTER TABLE T243395 MODIFY KDC_CLASS_NO VARCHAR(50); Table 'T243395' altered.
Caution
Apply the patch through technical support provided by Tmax TIBERO.