| From: | "Zeugswetter Andreas ADI SD" <ZeugswetterA(at)spardat(dot)at> |
|---|---|
| To: | "Albe Laurenz" <all(at)adv(dot)magwien(dot)gv(dot)at>, <andrew(at)supernews(dot)com>, <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Bug in UTF8-Validation Code? |
| Date: | 2007-04-04 10:02:07 |
| Message-ID: | E1539E0ED7043848906A8FF995BDA57901E7B6D4@m0143.s-mxs.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
> > When the database uses a single byte encoding, the chr function
takes
> > the binary byte representation as an integer number between 0 and
255
> > (e.g. ascii code).
> > When the database encoding is one of the unicode encodings it takes
a
> > unicode code point.
> > This is also what Oracle does.
>
> Sorry, but this is *NOT* what Oracle does.
> At least if we can agree that the code point for the Euro
> sign is 0x20AC.
yes
>
> SQL> SELECT ASCII('EUR') AS DEC,
> 2 TO_CHAR(ASCII('EUR'), 'XXXXXX') AS HEX
> 3 FROM DUAL;
>
> DEC HEX
> ---------- ----------------------------
> 14844588 E282AC
>
> The encoding in this example is AL32UTF8, which corresponds
> to our UTF8.
You are right, I am sorry. My test was broken.
To get the euro symbol in Oracle with a AL32UTF8 encoding you use
chr(14844588)
Andreas
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Simon Riggs | 2007-04-04 11:14:45 | Re: CheckpointStartLock starvation |
| Previous Message | Simon Riggs | 2007-04-04 09:40:52 | Re: Synchronized Scan benchmark results |