Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 Général » Erreur avec les expressions rationnelles insensibles à la casse ~* » 27/07/2009 15:39:05
- Martin Bécue
- Réponses : 3
Bonjour,
J'utilise PostgreSQL 8.3.7 en français (UTF-8), et j'ai remarqué que l'opérateur ~* était sensible à la casse des caractères accentués, contrairement au comportement attendu (cf. § 9.7.3, page 117 du manuel en français). Par exemple :
CREATE TABLE "text_irex" (
"prénom" character varying(32) NOT NULL
);
INSERT INTO "test_irex" VALUES ('Édouard VII');
INSERT INTO "test_irex" VALUES ('Aliénor d’Aquitaine');
INSERT INTO "test_irex" VALUES ('Richard Cœur de Lion');
INSERT INTO "test_irex" VALUES ('Œdipe');
SELECT * FROM "test_irex" WHERE "prénom" ~* 'é';
On ne retrouve qu'Aliénor d'Aquitaine.
SELECT * FROM "test_irex" WHERE "prénom" ILIKE '%é%';
On retrouve Édouard VII et Aliénor.
SELECT * FROM "test_irex" WHERE "prénom" ~* 'A';
On retrouve Édouard, Aliénor et Richard.
S'agit-il d'un problème connu ?
Pages : 1