|
||||
Ouverture de sessionNavigationContactez-nousAdministration du site : RechercheSujets du forumSujets actifsNouveaux sujets:SyndicationSondageQuelle est la version de PostgreSQL la plus répandue sur vos serveurs ? 8.3 10% 8.2 42% 8.1 40% 8.0 2% 7.4 6% 7.3 ou antérieure 0% Nombre de votes: 48 |
Locale pour une base de données multilingueTechnique - installation | Locale pour une base de données multilinguePar genepi le 27/08/2006 - 20:37 Bonjour, Je dois créer une base de données multilingue mais j'ai quelques problèmes pour comprendre le fonctionnement PostgreSQL par rapports aux autres SGBD. Dans ma base de données, je dois conserver des textes dans différentes langues, ce qui fait que je conserverai les données en UNICODE (UTF-8). À chaque texte conservé, j'ai une colonne qui indique la langue du contenu. CREATE TABLE documents ( PostgreSQL est installé sur un serveur Debian qui utilise pour locale fr_CA.ISO-8859-1. Mon problème est de comprendre quels sont les paramètres à utiliser pour l'installation du serveur et de la création de la base de données. 1) À quoi sert le paramétrage de la locale au moment d'installer le serveur? D'après ce que je comprends de la documentation, ça a un impact sur l'ordre de tri des indexes pour les bases de données du cluster. 2) Comme toutes les langues sont contenues dans une même colonne, mais que les recherches s'effectuent dans une seule langue (spécifiée par l'autre colonne), j'aurais imaginé pouvoir spécifier la collation de l'ordre de tri dynamiquement au moment de l'exécution de la requête. Du genre (c'est moi qui invente cette syntaxe du COLLATE): SELECT texte D'après ce que je comprend de la documentation (http://docs.postgresqlfr.org/7.4/sql-select.html), l'ordre de tri est donné par la locale de l'initdb, donc ça veut dire qu'il est le même pour toutes les langues utilisées dans la base de données. Est-ce correct et quel est l'impact/intérêt/performance de ce paramétrage initial? 3) Quels conseils ou paramétrage de mon serveur/BD me donneriez-vous pour résoudre au mieux ce problème avec PostgreSQL? Je voudrai partir du bon pied et éviter d'avoir à remonter mon serveur lorsqu'il sera en production... L'application qui accédera à ces données est programmée en Java, donc au pire je pourrai récupérer toutes les données non triées et effectuer le tri dynamiquement en fonction de la collation de la langue. Mais je préférais si ces détails étaient résolus simplement au niveau des données. Merci |
|||
© PostgreSQLFr, tous droits rĂ©servĂ©s.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.