I create my database using fr_CA.UTF-8 like this:
createdb --encoding=utf-8 --locale=fr_CA.UTF-8 --template=template0 someapp_development
Then I load sample data, which contains accented characters, including "Étude de Me André Caron" and "Zellers inc.". In French, É should sort / collate before Z, and thus I expect the following statement:
SELECT fullname FROM addressees ORDER BY LOWER(fullname)
to return É before Z, but sadly, this isn't the case:
# select fullname from addressees where party_id in (36, 618, 1264, 2481, 4473) order by lower(fullname);
fullname
-------------------------------------------
VRV Express inc. [4473]
Vêtements S.P. Apparels inc. (Les) [2481]
Zellers inc. (Galeries Orford) [1264]
Étude de Me André Caron [618]
Étude de Me Richard Drapeau [36]
Notice additionally that VRV was before Vêtements. I must have misunderstood something somewhere. Some more information:
$ psql someapp_development
psql (8.4.4, server 8.4.3)
$ psql --list
List of databases
Name | Owner | Encoding | Collation | Ctype | Access privileges
---------------------------+-----------+----------+-------------+-------------+-----------------------
meetphil_development | francois | UTF8 | fr_CA.UTF-8 | fr_CA.UTF-8 |