Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> Re: Migration to AL32UTF8 from WE8ISO8859P15

Re: Migration to AL32UTF8 from WE8ISO8859P15

From: Nigel Thomas <nigel_cl_thomas_at_yahoo.com>
Date: Wed, 10 Jan 2007 07:26:36 -0800 (PST)
Message-ID: <20070110152636.2945.qmail@web58708.mail.re1.yahoo.com>


Luc Q1/Q3: If you set the parameter NLS_LENGTH_SEMANTICS=CHAR then any ambiguous *new* column/variable definitions will be made long enough for characters rather than bytes. That seems a lot easier than changing every single table and package definition. But existing columns won't be affected, as I recall. You would need to MODIFY table/column definitions according (and then recompile affected views, dependent packages etc). You should beware of the possible implications on index key sizes (as the VARCHAR2 / NVARCHAR2 declarations in PL/SQL will be fixed as the packages are recompiled (mostly this will happen implicitly because of your DDL on the underlying tables - but you should check that any packages that aren't automatically recompiled are manually recompiled. Q2: of course Oracle limits SQL types (NOT in PL/SQL) to 4000 bytes - so up to 1000 * 4 byte chars (of course, most of your characters will occupy just 1 or 2 bytes - your exact mileage will vary depending on language). You can use CLOB instead, and many string functions work directly against 'small' CLOBS - but remember that CLOBs also have some drawbacks (LOB space management etc), so only convert if you are sure you have to. HTH Regards Nigel

--
http://www.freelists.org/webpage/oracle-l
Received on Wed Jan 10 2007 - 09:26:36 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US