DBAtlas · Database operations atlas

ORA-12899: value too large for column

Oracle

What does it mean?

A value longer than the defined maximum length was written to a character/data column. For example, a 15-character text does not fit in a VARCHAR2(10) column.

Why does it happen?

The column width is insufficient for the data; in a multibyte character set (UTF8) the character count exceeds the byte limit (BYTE semantics); a different character set during data migration; a concatenation result growing longer.

How to fix it

Widen the column: ALTER TABLE my_table MODIFY (my_column VARCHAR2(100)); For multibyte content use CHAR semantics: my_column VARCHAR2(100 CHAR). If long values must be shortened, truncate them with SUBSTR. The error message gives the actual and allowed length; find the overflowing record with LENGTH/LENGTHB.

Open in DBAtlas →

More from this engine