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

Home -> Community -> Usenet -> c.d.o.misc -> Re: Select UNICODE (UTF8) data as octets from database Options

Re: Select UNICODE (UTF8) data as octets from database Options

From: Mark D Powell <Mark.Powell_at_eds.com>
Date: 18 Apr 2007 11:35:18 -0700
Message-ID: <1176921318.047995.9490@n76g2000hsh.googlegroups.com>


On Apr 18, 6:30 am, OracleServer <helge.ha..._at_applica.no> wrote:
> Hi.
> My database (10g) has been created with database character set to
> "Unicode standard UTF-8 AL32UTF8".
>
> The data has been stored correctly. Used select dump(name, 1016)
> from...
> Query returned:
> Len = 3 CharacterSet=AL32UTF8: e4, b8, 84
> UTF-8 encoding of Unicode character (Traditional Chinese): 丁
>
> Can someone tell me how to select this col into a ProC VARCHAR2
> variable? The query in my ProC code returns this a value, but the
> lenght is equal to 1. How can I get all the 3 octets into my VARCHAR2
> variable?
> Does it depends on any compilation option, or the PC locale?
>
> BR,
> Helge Hauan

Is length returning bytes or characters? Dump returns internal storage.

>From the SQL manual >>

The "length" functions return the length of char. LENGTH calculates length using characters as defined by the input character set. LENGTHB uses bytes instead of characters. LENGTHC uses Unicode complete characters. LENGTH2 uses UCS2 codepoints. LENGTH4 uses UCS4 codepoints.
<<

HTH -- Mark D Powell -- Received on Wed Apr 18 2007 - 13:35:18 CDT

Original text of this message

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