CREATE COLLATION

CREATE COLLATION — définit une nouvelle collation

Synopsis

CREATE COLLATION nom (
    [ LOCALE = locale, ]
    [ LC_COLLATE = lc_collate, ]
    [ LC_CTYPE = lc_ctype ]
)
CREATE COLLATION nom FROM collation_existante
  

Description

CREATE COLLATION définit une nouvelle collation utilisant la configuration de locale du système d'exploitation spécifiée ou par copie d'une collation existante.

Pour pouvoir créer une collation, vous devez posséder le privilège CREATE sur le schéma de destination.

Paramètres

nom

Le nom de la collation. Le nom de la collation peut être qualifié par le schéma. Si ce n'est pas le cas, la collation est définie dans le schéma courant. Le nom de la collation doit être unique au sein de ce schéma. (Le catalogue système peut contenir des collations de même nom pour d'autres encodages, mais ces dernières sont ignorées si l'encodage de la base de données ne correspond pas).

locale

Ceci est un raccourci pour positionner d'un même coup LC_COLLATE et LC_CTYPE. Si vous spécifiez cela, vous ne pouvez plus spécifier aucun de ces deux paramètres-ci.

lc_collate

Utilise la locale système spécifiée comme catégorie de locale de LC_COLLATE. La locale doit être applicable à l'encodage de la base courante. (cf. CREATE DATABASE(7)pour les règles précises.)

lc_ctype

Utilise la locale système spécifiée comme catégorie de locale de LC_CTYPE. La locale doit être applicable à l'encodage de la base courante. (cf. CREATE DATABASE(7)pour les règles précises.)

collation_existante

Le nom d'une collation existante à copier. La nouvelle collation aura les mêmes propriétés que celle copiée, mais ce sera un objet indépendant.

Notes

Utilisez DROP COLLATION pour supprimer une collation définie par l'utilisateur.

Voir Section 22.2, « Support des collations » pour plus d'informations sur le support des collations dans PostgreSQL.

Exemples

Créer une collation à partir de la locale système fr_FR.utf8 (en supposant que l'encodage de la base courante est UTF8):

CREATE COLLATION french (LOCALE = 'fr_FR.utf8');
   

Créer une collation à partir d'une collation existante :

CREATE COLLATION german FROM "de_DE";
   

Ceci peut être pratique pour pouvoir utiliser dans des applications des noms de collation indépendants du système d'exploitation.

Compatibilité

Dans le standard SQL se trouve un ordre CREATE COLLATION, mais il est limité à la copie d'une collation existante. La syntaxe de création d'une nouvelle collation est une extension PostgreSQL™.

Voir également

ALTER COLLATION(7), DROP COLLATION(7)