Character set conversion problem

Recently we have changed codepage of one of oracle 8.1.7 database from NEE8ISO8859P4 to LV8RST104090. After the change, we have noticed that one in-house application failed with error message “ORA-12703: this character set conversion is not supported”

The problem was that this database used by another UTF8 database through dblink. The application from UTF8 is calling procedure from LV8RST104090 and output parameters cannot be converted. But IN parameters are converted normally.

How we solve the problem. The Simplest method is to use RAW data type which is not automatically converted between databases with different codepages. We have used UTL_RAW package. Change parameter type to RAW and use UTL_RAW.CAST_TO_RAW to convert to raw and
UTL_RAW.CAST_TO_NVARCHAR2,
UTL_RAW.CAST_TO_NUMBER to convert back the parameters.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s