Topic: The coding of request INSERT, ORA-12899
There is a client application which the text file in coding CP866 and tries to interpose the data into Oracle.
There is a problem with the coding. All data cyrillic and like 1 character should be = to 1 byte.
Problem on an example:
- Field VARCHAR2, the size 5 byte
- We try to interpose there ' ' and it is there and then caught exception: ORA-12899: value too large for columnvalue too large for column (actual: 10, maximum: 5)"
I.e. each character is encoded by two bytes. In a DB there is coding AL32UTF8. To change type of columns on VARCHAR2 (5 CHAR) it is impossible (an industrial DB).
Clever people prompted that in storage of application under.NET the text data is always stored in coding UTF16 and the line of request, accordingly has this coding that leads to an error.