--- Tom Lane <tgl@sss.pgh.pa.us> escribió:
> Jaime Casanova <systemguards@yahoo.com> writes:
> > Why it not work on Latin9,
>
> >> Probably because it hasn't got a table for
> Latin9.
> >>
> >> Feel free to contribute one --- see
> >> src/backend/utils/adt/ascii.c.
>
> > This page shows the differences between Latin1 &
> > Latin9:
> > http://www.cs.tut.fi/~jkorpela/latin9.html
>
> > The diffs are:
>
> > 164: the euro symbol. (sql_ascii =
> 'E')???
> > 166: an S with a symbol above (sql_ascii = 'S')
> > 168: the same but lower case (sql_ascii = 's')
> > 180: an Z with a symbol above (sql_ascii = 'Z')
> > 184: the same but lower case (sql_ascii = 'z')
> > 188: it's an O merge with an E (sql_ascii =
> '')???
> > 189: the same but lower case (sql_ascii =
> '')???
> > 190: an Y with a 2 points above (sql_ascii = 'Y')
>
> > Comments?
>
> Works for me. Anyone feel this is too big a change
> to push into 8.0?
> Strictly speaking it's a new feature, but it sure
> looks harmless from here.
You guys have the code, you guys have the power.
I don't think it can cause any problem. :)
>
> Personally I'd say that the euro symbol should map
> to ' ' not 'E', but am not set on that.
>
Maybe, someone that uses the euro symbol can comment??
if not, and you said that we can just map that symbol
to ' '.
Here's the *fixed* patch it's up to you wich one to
use.
regards,
Jaime Casanova
_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com*** src/backend/utils/adt/ascii.c.orig 2004-08-29 00:06:49.000000000
-0500
--- src/backend/utils/adt/ascii.c 2004-12-17 23:02:01.000000000 -0500
***************
*** 53,58 ****
--- 53,66 ----
ascii = " A L LS \"SSTZ-ZZ a,l'ls ,sstz\"zzRAAAALCCCEEEEIIDDNNOOOOxRUUUUYTBraaaalccceeeeiiddnnoooo/ruuuuyt.";
range = RANGE_160;
}
+ else if (enc == PG_LATIN9)
+ {
+ /*
+ * ISO-8859-15 <range: 160 -- 255>
+ */
+ ascii = " cL YS sCa -R Zu .z EeY?AAAAAAACEEEEIIII NOOOOOxOUUUUYTBaaaaaaaceeeeiiii nooooo/ouuuuyty";
+ range = RANGE_160;
+ }
else if (enc == PG_WIN1250)
{
/*