4 Replies Latest reply: Oct 14, 2009 10:55 AM by 727982 RSS

    ORA-01482: unsupported character set

    556637
      Hi All,

      Recently, I did one SQL statement as following:

      SQL> select CONVERT(DESCRIPTION,'UTF8','WE8ISO8859P1')
      from test
      where siteid=114 and descid=1277;
      ERROR:
      ORA-01482: unsupported character set

      DESCRIPTION is a CLOB type column. My Oracle version is 9.2.0.4, OS is Linux AS 3.

      When I took out the second parameter of convert() function -- 'WE8ISO8859P1', it could work well.

      I want to know whether this is a bug of Oracle? How can I resolve it?

      Best Regards
      -Doris
        • 1. Re: ORA-01482: unsupported character set
          Sven W.
          The error message just tells you that it is not allowed to convert your string from WE8ISO8859P1 to UFT8. The reason could be that WE8ISO8859P1 is not supported in your database installation.

          It very much depends on you database version. Here you can find more information (11g!): http://download.oracle.com/docs/cd/B28359_01/server.111/b28298/applocaledata.htm#i669888

          This should show which NLS Stettings are supported.
          SELECT * FROM V$NLS_VALID_VALUES WHERE parameter = 'CHARACTERSET'
          After a little bit of digging I found that "WE8ISO8859P1 ... is not a subset of UTF8" (http://download.oracle.com/docs/cd/B10501_01/server.920/a96529/ch5.htm#1019808)

          Message was edited by:
          Sven Weller
          • 2. Re: ORA-01482: unsupported character set
            556637
            Hi Sven,

            Thanks for your answers.

            For 1), SQL> SELECT * FROM V$NLS_VALID_VALUES WHERE value='WE8ISO8859P1';

            PARAMETER VALUE
            -------------------- --------------------
            CHARACTERSET WE8ISO8859P1

            For 2), yes, I see the "WE8ISO8859P1 ... is not a subset of UTF8", but when a column's datatype is varchar2, this statement is executable and no any error. What I consider is whether convert() is not support CLOB datatype? Whether CLOB datatype has special convert way?
            • 3. Re: ORA-01482: unsupported character set
              User611969-Oracle
              It doesn't mean that CLOB is not supported.

              It is clearly mentioned in Oracle documention : -

              "The VARCHAR datatype is synonymous with the VARCHAR2 datatype. To avoid possible changes in behavior, always use the VARCHAR2 datatype to store variable-length character strings."
              • 4. Re: ORA-01482: unsupported character set
                727982
                We had a problem with that, and we found we were using JDBC driver from a previous version of Oracle (we were using JDBC v 9.02 and the Oracle was 11.1.0.7).
                In our case, we copied /oracle/jdbc/*.jar to /apache/webapps/myapp/WEB-INF/lib
                For this particular case, JDBC drivers in version 11 and 9 have different file names, so you must delete ojdbc14.jar and classes12.jar from /webapps/myapp/WEB-INF/lib to avoid class conflicts.
                We updated JDBC drivers and this fixed the problem.

                Regards.
                Eduardo.