Do I have to change my Locale or database Encoding to enable LOWER() ? - Mailing list pgsql-admin

From 江文
Subject Do I have to change my Locale or database Encoding to enable LOWER() ?
Date
Msg-id 13979541.1110791211578.JavaMail.postfix@mx37.mail.sohu.com
Whole thread Raw
List pgsql-admin
Hello Hackers,
    I store some information of manufacturing materials in a table, and in this table there's a column storing
material'sname. These names are mixed with Chinese characters and English characters. 
    To convert all English characters in material names into lower cases, I wrote a query:   SELECT
LOWER("ChineseDesc")FROM "Materials"; 

    Then Postgres reported an error:
ERROR:  invalid multibyte character for locale
HINT:  The server's LC_CTYPE locale is probably incompatible with the database encoding.

    After some googling I found out it's caused by the settings of LC_CTYPE & Encoding of the database.

    Here's my db's settings:
    My LC_CTYPE is set to Chinese_People's Republic of China.936 and I'm using UNICODE as this database's encoding.

    But still I'm puzzled:
    Which encoding to choose for my database or do I have to change my Locale setting? I prefer to stay with UNICODE,
becauseI don't want to see my data clearly in PGAdmin 3 instead of *&^%$#@ . 

    Any suggestions will be appreicated!
    Thanks in advance,

    Henry

------------------------------------------
弄懂了PostgreSQL, 就知道了什么才是共产主义

pgsql-admin by date:

Previous
From: weiping
Date:
Subject: Re: Performance Question
Next
From: Weiping
Date:
Subject: Re: Performance Question