BUG #2116: Searching text fields does not work in EUC_JP
The following bug has been logged online:
Bug reference: 2116
Logged by: Jon Keating
Email address: jon_keating@gcnet.co.jp
PostgreSQL version: 8.1.1
Operating system: Win 2003
Description: Searching text fields does not work in EUC_JP
Details:
Hello, I found a problem with 8.1.0 so I upgraded to 8.1.1 but the issue
still persists.
I have a database with the default encoding set to EUC_JP and the client
(using pgAdmin III) is set to EUC_JP as well. THe issue is the following
query:
SELECT * FROM stock WHERE name = '日経500平均'; <-- Searching by
japanese text
This query returns nothing, but if I change the name = '... to name LIKE '..
it returns the data that I expect.
On my local machine (Win XP Pro SP2), I have an older version of PostgreSQL,
8.0.3 where the search by = works as expected. I am a little leary of
upgrading to 8.1.1 on my local machine since I need it on a daily basis to
work with these kinda queries.
Thanks,
Jon
"Jon Keating" <jon_keating@gcnet.co.jp> writes:
I have a database with the default encoding set to EUC_JP and the client
(using pgAdmin III) is set to EUC_JP as well.
Is the database's locale set to something that works with EUC_JP? You
can't just whack the encoding around without paying attention to having
a compatible locale setting ... and unfortunately, PG doesn't have
enough knowledge about locales to warn you when you choose a combination
that doesn't work.
regards, tom lane
Tom Lane wrote:
Is the database's locale set to something that works with EUC_JP? You
can't just whack the encoding around without paying attention to having
a compatible locale setting ... and unfortunately, PG doesn't have
enough knowledge about locales to warn you when you choose a combination
that doesn't work.
Well, it was set to Japan_Japanese (or something similiar to that). I am
running it on a Japanese system. So, I created a new database cluster
with initdb (after struggling with runas.exe under Windows) withe a
locale of "C". I then restored my DB and it worked fine.
I find it strange that it won't search Japanese strings with a locale of
Japanese... which it defaulted to doing during the Win32 Installer.
Anyways, it would be nice to have it as an option or something. If it is
there and I didn't see it.. sorry in advance!
Jon
Jon Keating wrote:
I have a database with the default encoding set to EUC_JP and the client
(using pgAdmin III) is set to EUC_JP as well.
pgAdmin uses Unicode (unless the DB is SQL_ASCII or MULE_INTERNAL), you
won't get happy if you change it using a SET command.
Regards,
Andreas