Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Determining char/varchar2 column length
You're right re: variable-width multibyte character set. We're using
UTF8 and I tend to gloss over that detail.
>Btw, this is an important point, that nls_length_semanics affects only table
>column (and possibly type) definitions, but no PL/SQL datatypes for example.
>A client of mine had problems after migrating to UTF8 w. character nls
>length semantics, PL/SQL variables were still defined in byte lengths..
>
>
Interesting, I was under the impression (from Oracle documentation) that
recompiling PL/SQL routines with a session or system
nls_length_semantics=char setting would ensure the variables are
correctly defined. Could be wrong.
>
>
>>So, the idea is we want a query to say "here's the value specified in
>>the table create statement" for the length of that column. Whereas in
>>8i we could query data_length, in 9i data_length does /not/ always
>>reflect this value. Rather, it's stored in char_length, a field that
>>does not exist in 8i.
>>
>>
>
>I'm not sure whether I understand your question, but check whether
>CHAR_COL_DECL_LENGTH column in DBA_TAB_COLUMNS helps you.
>
>
That might be exactly what I'm looking for, thanks!
Adam
-- Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html -----------------------------------------------------------------Received on Wed Jul 14 2004 - 16:06:30 CDT