Oracle 11g Linguistic NLS SORT Throws Exception
859225May 3 2011 — edited May 5 2011Hi All,
I am using oracle 11g and when i try NLS_Sort with Generic_m option, throws ORA-00910 exception. See below for more details
Select * From v$version
1 Oracle Database 11g Release 11.1.0.6.0 - Production
2 PL/SQL Release 11.1.0.6.0 - Production
3 CORE 11.1.0.6.0 Production
4 TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
5 NLSRTL Version 11.1.0.6.0 - Production
Select * From v$NLS_PARAMETERS;
1 NLS_LANGUAGE AMERICAN
2 NLS_TERRITORY AMERICA
3 NLS_CURRENCY $
4 NLS_ISO_CURRENCY AMERICA
5 NLS_NUMERIC_CHARACTERS .,
6 NLS_CALENDAR GREGORIAN
7 NLS_DATE_FORMAT DD-MON-RR
8 NLS_DATE_LANGUAGE AMERICAN
9 NLS_CHARACTERSET WE8MSWIN1252
10 NLS_SORT BINARY
11 NLS_TIME_FORMAT HH.MI.SSXFF AM
12 NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
13 NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
14 NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
15 NLS_DUAL_CURRENCY $
16 NLS_NCHAR_CHARACTERSET AL16UTF16
17 NLS_COMP BINARY
18 NLS_LENGTH_SEMANTICS BYTE
19 NLS_NCHAR_CONV_EXCP FALSE
I have one table 'Test' in that column TestDesc varchar2(4000). Now if i retrieve the records by
select sts, it is successfully executed. The same if i do after exec of the below sts, it is
throwing ORA-00910:specified length too long for its datatype.
1. ALTER SESSION SET NLS_SORT=GENERIC_m;
2. Select * From Test order by TestDesc; (It is throwing ORA-00910 exception)
But the same query/setup is executed successfully in oracle 10g.
My question:
Why it is throwing this exception especially in 11g?
Do i need to excute any alter sts like changing of charactor set..
Kindly help me to sove this issue.