Le Mercredi 13 Mars 2002 19:53, Joel Rodrigues a écrit :
> I'm new to databases & PostgreSQL, but wouldn't it be better to
> use Unicode ?And, instead of initdb, cannot one simply override the default
> database cluster encoding using :
> "CREATE DATABASE mydbname WITH ENCODING = 'unicode'" ?
Yes, it is always possible. Some remarks :
1) PostgreSQL odbc driver is UTF-8 compatible but not UCS-2 compatible (UCS-2
is needed by some Microsoft products, such as Access 2K). Next version of
odbc drivers will support UCS-2.
2) Some Microsoft products, such as VB, do not support Unicode at all.
3) Php can parse UTF-8 pages. But to use sub-string functions (left, right,
mid), Php needs to be compiled with multi-byte options.
> Also, could anyone tell me why PostgreSQL sometimes echoes it's
> own responses, i.e. stating things twice, like so :
> postgres=# SHOW CLIENT_ENCODING;
> NOTICE: Current client encoding is 'SQL_ASCII'
> NOTICE: Current client encoding is 'SQL_ASCII'
> SHOW VARIABLE
> postgres=#
You can set SET CLIENT_ENCODING to 'Latin9' or 'Latin1' to recode data
between backend and client. Please note PostgreSQL is only able to recode
data from Unicode <-> Latin as for PostgreSQL 7.2+.
Choose Unicode to display multiple scripts at the same time = Japanese
glyphs, Arabic, etc.. and recode when needed.
On the converse, it is recommended to choose a single encoding on both sides.
Cheers,
Jean-Michel POURE