PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 23/04/2018 09:07:45

GDS_Strou
Membre

Problème pour créer collation

Bonjour.
Je viens d’installer un postgresql portable et lors de la création d’une nouvelle base, l’interface me propose uniquement en choix de collation C ou POSIX.

J’essai donc en vain de créer la locale fr_FR.UTF8 mais je n’y parviens pas.

La commande create collation fr_FR (LOCALE=‘fr_FR.UTF8’); me renvoiel’erreur suivante :

Could not create locale fr_FR.UTF8: unrecognized winsock error 10004

Auriez vous une idée ? Merci d’avance

Hors ligne

#2 23/04/2018 14:28:34

dverite
Membre

Re : Problème pour créer collation

Quel est le système d'exploitation du serveur?

Hors ligne

#3 23/04/2018 14:30:44

GDS_Strou
Membre

Re : Problème pour créer collation

Je lance tout ça sous Windows 7 pro sp1

Hors ligne

#4 23/04/2018 15:36:46

dverite
Membre

Re : Problème pour créer collation

Windows utilise une convention différente des systèmes Unix pour nommer ses locales, et notamment sur le fait que l'encodage (UTF8) ne fait pas partie du nom.

Essayez plutôt

create collation fr_FR ( LOCALE = 'French_France.1252')

Hors ligne

#5 23/04/2018 15:44:36

GDS_Strou
Membre

Re : Problème pour créer collation

Votre commande a fonctionné, mais le france.1252 correspond bien à de l’utf8 ?

Malgré la relance de pgAdmin, pour ajouter une base de données, je n’ai que le choix de C ou posix sans collation, ça n’a pas changé malgré le succès de l’ajout France.1252 dans la table pg_collation

Hors ligne

#6 23/04/2018 16:01:16

gleu
Administrateur

Re : Problème pour créer collation

WIN1252 ne correspond pas du tout à de l'UTF8. C'est un encodage spécifique de Windows.


Guillaume.

Hors ligne

#7 23/04/2018 16:02:43

GDS_Strou
Membre

Re : Problème pour créer collation

Comment puis je faire alors pour ajouter la collation fr_FR.UTF8 ?

Hors ligne

#8 23/04/2018 16:28:55

dverite
Membre

Re : Problème pour créer collation

Il se trouve que la locale French_France.1252 n'est pas limitée à un encodage spécifique. Comme dit dans la doc ici:

https://www.postgresql.org/docs/current … ibyte.html

For C or POSIX locale, any character set is allowed, but for other libc-provided locales there is only one character set that will work correctly.
(On Windows, however, UTF-8 encoding can be used with any locale.) If you have ICU support configured, ICU-provided locales can be used with most but not all server-side encodings.

Si pgAdmin ne propose pas la collation nouvellement créee, le problème est à son niveau.

Un CREATE DATABASE à la main devrait passer.

Hors ligne

#9 23/04/2018 16:42:27

GDS_Strou
Membre

Re : Problème pour créer collation

Je viens de tester à la main, j’ai ce retour erreur :

New collation French_France.1252 is incompatible with the collation of the template database <C>.
Use the same collation as in the template database  or use template 0 as template.

Ma commande sql était :
Create database Jeremy
With owner jeremy
Encoding =‘UTF8’
Tablespace =pg_default
LC_COLLATE= ´French_France.1252’
LC_CTYPE = ´French_France.1252’
Connection limit = -1;

Dernière modification par GDS_Strou (23/04/2018 16:43:18)

Hors ligne

#10 23/04/2018 16:46:45

dverite
Membre

Re : Problème pour créer collation

Il faut donc ajouter TEMPLATE=template0 à tout ça.

Hors ligne

#11 23/04/2018 16:51:06

GDS_Strou
Membre

Re : Problème pour créer collation

Évidemment, merci.
Désolé pour mes questions répétitives mais je débute avec postgres et pgAdmin.
Je tente de restaurer un dump sur ma base nouvellement créé et vous recontacte au besoin ?

Hors ligne

#12 23/04/2018 18:25:56

dverite
Membre

Re : Problème pour créer collation

Le forum est là pour ça smile
N'oubliez pas de préciser les versions de vos logiciels avec les questions.

Hors ligne

Pied de page des forums