Skip site navigation (1) Skip section navigation (2)

LATIN2 and wrong upper() and lower() functions output

From: Robert Gaszewski <graszew(at)poland(dot)com>
To: pgsql-bugs(at)postgresql(dot)org
Subject: LATIN2 and wrong upper() and lower() functions output
Date: 2001-03-29 21:04:30
Message-ID: 3AC3A35E.43FB9CB9@poland.com (view raw or flat)
Thread:
Lists: pgsql-bugs
I have PostgreSQL 7.1RC1 with multibyte support and encoding 
set to LATIN2.

When I try SELECT UPPER('some_text_with_polish_national_chars');
polish chars are still in lower case but others (abcd...wxyz) are
in upper case.


For example:

(Client encoding is LATIN2)

input:
SELECT UPPER('łąka');  --'ł' and 'ą' are polish national chars

output:

 upper
-------
 łąKA


but it should be:

 upper
-------
 ŁĄKA



Also, ORDER BY works improperly.

for example:

input:
CREATE TABLE test ( name varchar(20) );

INSERT INTO test VALUES('ad');
INSERT INTO test VALUES('aa');
INSERT INTO test VALUES('ac');
INSERT INTO test VALUES('ab');
INSERT INTO test VALUES('ać'); --'ć' is another polish national char
INSERT INTO test VALUES('ae');

SELECT * FROM test ORDER BY name;

output:

 name
------
 aa
 ab
 ac
 ad
 ae
 ać


but output should be:

 name
------
 aa
 ab
 ac
 ać 
 ad
 ae


PS.
I compiled PostgreSQL with --enable-multibyte and
--enable-unicode-conversion.

initdb -E UNICODE -D /usr/local/pgsql/data
createdb pl_test -E LATIN2



Info about my configuration
---------------------------

PostgreSQL version:
  7.1RC1 compiled by gcc 2.95.2

Platform:
  Debian GNU/Linux 2.2 Potato on Intel Celeron 366 MHz with 128 MB RAM

Kernel
  2.2.19

C library
  2.1



Greetings,
Robert


------------------
Robert Gaszewski
graszew(at)poland(dot)com


Responses

pgsql-bugs by date

Next:From: Joe ShevlandDate: 2001-03-29 22:05:48
Subject: RE: [JDBC] Possible large object bug?
Previous:From: Jim BallardDate: 2001-03-29 18:50:45
Subject: Problem with character results

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group