Classements pris en charge par Babelfish - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Classements pris en charge par Babelfish

Lorsque vous créez un cluster de SQL base de données Aurora Postgre avec Babelfish, vous choisissez un classement pour vos données. Un classement spécifie l'ordre de tri et les modèles de bits qui génèrent le texte ou les caractères dans un langage humain écrit donné. Un classement inclut des règles de comparaison des données pour un ensemble donné de modèles de bits. Le classement est lié à la localisation. Les différents paramètres régionaux affectent le mappage des caractères, l'ordre de tri, etc. Les attributs de classement sont reflétés dans les noms des différents classements. Pour plus d'informations sur les attributs, consultez Babelfish collation attributes table.

Babelfish mappe les classements SQL du serveur avec des classements comparables fournis par Babelfish. Babelfish prédéfinit les classements Unicode avec des comparaisons de chaînes et des ordres de tri sensibles aux particularités culturelles. Babelfish fournit également un moyen de traduire les classements de votre base de données de SQL serveur en classement Babelfish le plus proche. Des classements spécifiques aux paramètres régionaux sont fournis pour différentes langues et régions.

Certains classements spécifient une page de code correspondant à un encodage côté client. Babelfish traduit automatiquement l'encodage du serveur vers l'encodage du client en fonction du classement de chaque colonne de sortie.

Babelfish prend en charge les classements répertoriés dans Babelfish supported collations table. Babelfish mappe les classements SQL du serveur avec des classements comparables fournis par Babelfish.

Babelfish utilise la version 153.80 de la bibliothèque de classement International Components for Unicode ()ICU. Pour plus d'informations sur les ICU classements, consultez la section Collation dans la ICU documentation. Pour en savoir plus sur Postgre SQL et le classement, consultez la section Support du classement dans la documentation de PostgreSQL.

Paramètres de cluster de bases de données qui contrôlent le classement et les paramètres régionaux

Les paramètres suivants ont une incidence sur le comportement du classement.

babelfishpg_tsql.default_locale

Ce paramètre spécifie les paramètres régionaux par défaut utilisés par le classement. Ce paramètre est utilisé en combinaison avec les attributs répertoriés dans Babelfish collation attributes table pour personnaliser les classements liés à une langue et à une région spécifiques. La valeur par défaut de ce paramètre est en-US.

Les paramètres régionaux par défaut s'appliquent à tous les noms de classements Babelfish commençant par « BBF » et à tous les classements SQL du serveur mappés aux classements Babelfish. La modification de la valeur de ce paramètre sur un cluster de bases de données Babelfish existant n'affecte pas les paramètres régionaux des classements existants. Pour obtenir la liste des classements, consultez Babelfish supported collations table.

babelfishpg_tsql.server_collation_name

Ce paramètre spécifie le classement par défaut pour le serveur (instance de cluster de SQL base de données Aurora Postgre) et la base de données. La valeur par défaut est sql_latin1_general_cp1_ci_as. server_collation_nameIl doit s'agir d'un CI_AS classement car dans T-SQL, le classement du serveur détermine la manière dont les identifiants sont comparés.

Lorsque vous créez votre cluster de bases de données Babelfish, vous choisissez le Collation name (Nom du classement) dans la liste sélectionnable. Il s'agit notamment des classements répertoriés dans Babelfish supported collations table. Ne modifiez pas server_collation_name après la création de la base de données Babelfish.

Les paramètres que vous choisissez lorsque vous créez votre cluster de SQL base de données Babelfish pour Aurora Postgre sont stockés dans le groupe de paramètres du cluster de base de données associé au cluster pour ces paramètres et définissent son comportement de classement.

Classements déterministes et non déterministes et Babelfish

Babelfish prend en charge les classements déterministes et non déterministes :

  • Un classement déterministe considère que les caractères dont les séquences d'octets sont identiques sont égaux. Cela signifie que x et X ne sont pas égaux dans un classement déterministe. Les classements déterministes peuvent être sensibles à la casse (CS) et sensibles aux accents (AS).

  • Un classement non déterministe ne nécessite pas de correspondance identique. Un classement non déterministe considère que x et X sont égaux. Les classements non déterministes ne font pas la distinction entre majuscules et minuscules (CI) ou insensibles aux accents (AI), ou les deux.

Dans le tableau suivant, vous pouvez trouver certaines différences de comportement entre Babelfish et Postgre SQL lors de l'utilisation de classements non déterministes.

Babelfish Poster SQL

Supporte la LIKE clause pour les classements CI_AS.

Ne prend pas en charge la LIKE clause sur les classements non déterministes.

Supporte la LIKE clause uniquement sur les classements AI suivants issus de la version 4.2.0 de Babelfish :

  • bbf_unicode_cp1250_ci_ai

  • bbf_unicode_cp1250_cs_ai

  • bbf_unicode_cp1257_ci_ai

  • bbf_unicode_cp1257_cs_ai

  • bbf_unicode_cp1_ci_ai

  • bbf_unicode_cp1_cs_ai

  • estonian_ci_ai

  • finnish_swedish_ci_ai

  • french_ci_ai

  • latin1_general_ci_ai

  • latin1_general_cs_ai

  • moderne_spanish_ci_ai

  • polish_ci_ai

  • sql_latin1_general_cp1_ci_ai

  • sql_latin1_general_cp1_cs_ai

  • traditional_spanish_ci_ai

Ne prend pas en charge la LIKE clause sur les classements non déterministes.

Pour une liste des autres limitations et différences de comportement de Babelfish par rapport à SQL Server et PostgreSQL, consultez. Limites et différences de comportement des classements

Babelfish et SQL Server suivent une convention de dénomination pour les classements qui décrit les attributs des classements, comme indiqué dans le tableau suivant.

Attribut Description

AI

Insensible aux accents.

AS

Sensibles aux accents.

BIN2

BIN2demande que les données soient triées dans l'ordre des points de code. L'ordre des points de code Unicode est le même pour les UTF encodages -8, UTF -16 et UCS -2. L'ordre des points de code est un classement déterministe rapide.

CI

Insensible à la casse.

CS

Sensible à la casse

PREF

Pour trier les lettres majuscules avant les lettres minuscules, utilisez un classement. PREF Si la comparaison est insensible à la casse, la version majuscule d'une lettre est triée avant la version minuscule, à condition qu'il n'y ait pas d'autre distinction. La ICU bibliothèque prend en charge les préférences en majuscules aveccolCaseFirst=upper, mais pas pour les classements CI_AS.

PREFne peut être appliqué qu'aux classements CS_AS déterministes.

Classements pris en charge par Babelfish

Utilisez les classements suivants comme classement de serveur ou classement d'objet.

ID du classement Remarques

bbf_unicode_general_ci_as

Prend en charge la comparaison entre majuscules et minuscules et l'opérateurLIKE.

bbf_unicode_cp1_ci_as

Collation non déterministe également connue sous le nom de. CP1252

bbf_unicode_ 0_ci_as CP125

Classement non déterministe permettant de représenter des textes dans les langues d'Europe centrale et d'Europe de l'Est qui utilisent l'alphabet latin.

bbf_unicode_ _ci_as CP1251

Classement non déterministe pour les langues utilisant l'alphabet cyrillique.

bbf_unicode_cp1253_ci_as

Classement non déterministe utilisé pour représenter le grec moderne.

bbf_unicode_cp1254_ci_as

Classement non déterministe qui prend en charge le turc.

bbf_unicode_cp1255_ci_as

Classement non déterministe qui prend en charge l'hébreu.

bbf_unicode_cp1256_ci_as

Classement non déterministe pour les langues utilisant l'alphabet arabe.

bbf_unicode_cp1257_ci_as

Classement non déterministe permettant de prendre en charge les langues estonienne, lettone et lituanienne.

bbf_unicode_cp1258_ci_as

Classement non déterministe utilisé pour les caractères vietnamiens.

bbf_unicode_cp874_ci_as

Classement non déterministe utilisé pour les caractères thaïlandais.

sql_latin1_general_cp1250_ci_as

Encodage non déterministe de caractères sur un octet utilisé pour représenter les caractères latins.

sql_latin1_general_cp1251_ci_as

Classement non déterministe prenant en charge les caractères latins.

sql_latin1_general_cp1_ci_as

Classement non déterministe prenant en charge les caractères latins.

sql_latin1_general_cp1253_ci_as

Classement non déterministe prenant en charge les caractères latins.

sql_latin1_general_cp1254_ci_as

Classement non déterministe prenant en charge les caractères latins.

sql_latin1_general_cp1255_ci_as

Classement non déterministe prenant en charge les caractères latins.

sql_latin1_general_cp1256_ci_as

Classement non déterministe prenant en charge les caractères latins.

sql_latin1_general_cp1257_ci_as

Classement non déterministe prenant en charge les caractères latins.

sql_latin1_general_cp1258_ci_as

Classement non déterministe prenant en charge les caractères latins.

chinese_prc_ci_as

Collation non déterministe qui prend en charge le chinois (). PRC

cyrillic_general_ci_as

Classement non déterministe prenant en charge l'alphabet cyrillique.

finnish_swedish_ci_as

Classement non déterministe prenant en charge le finnois.

french_ci_as

Classement non déterministe prenant en charge le français.

japanese_ci_as

Classement non déterministe prenant en charge le japonais. Pris en charge dans Babelfish 2.1.0 et versions ultérieures.

korean_wansung_ci_as

Classement non déterministe prenant en charge le coréen (avec tri par dictionnaire).

latin1_general_ci_as

Classement non déterministe prenant en charge les caractères latins.

modern_spanish_ci_as

Classement non déterministe prenant en charge l'espagnol moderne.

polish_ci_as

Classement non déterministe prenant en charge le polonais.

thai_ci_as

Classement non déterministe prenant en charge le thaï.

traditional_spanish_ci_as

Classement non déterministe prenant en charge l'espagnol (tri traditionnel).

turkish_ci_as

Classement non déterministe prenant en charge le turc.

ukrainian_ci_as

Classement non déterministe prenant en charge l'ukrainien.

vietnamese_ci_as

Classement non déterministe prenant en charge le vietnamien.

Vous pouvez utiliser les classements suivants comme classements d'objets.

Langage Options déterministes Options non déterministes

Arabe

Arabic_CS_AS

Arabic_CI_AS

Arabic_CI_AI

Alphabet arabe

BBF_Unicode_ _CS_AS CP1256

BBF_Unicode_Pref_ _CS_AS CP1256

BBF_Unicode_ _CI_AI CP1256

BBF_Unicode_ _CS_AI CP1256

Binaire

latin1_general_bin2

BBF_Unicode_ BIN2

Langues d'Europe centrale et d'Europe de l'Est utilisant l'alphabet latin

BBF_Unicode_ 0_CS_AS CP125

BBF_Unicode_Pref_ 0_CS_AS CP125

BBF_Unicode_ 0_CI_AI CP125

BBF_Unicode_ 0_CS_AI CP125

Chinois

chinois_ _CS_AS PRC

chinois_ _CI_AS PRC

chinois_ _CI_AI PRC

Cyrillic_General

Cyrillic_General_CS_AS

Cyrillique_General_CI_AS

Cyrillique_General_CI_AI

Alphabet cyrillique

BBF_Unicode_ _CS_AS CP1251

BBF_Unicode_Pref_ _CS_AS CP1251

BBF_Unicode_ _CI_AI CP1251

BBF_Unicode_ _CS_AI CP1251

Estonian

Estonian_CS_AS

Estonien CI_AS

Estonien CI_AI

estonien, letton et lituanien

BBF_Unicode_ _CS_AS CP1257

BBF_Unicode_Pref_ _CS_AS CP1257

BBF_Unicode_ _CI_AI CP1257

BBF_Unicode_ _CS_AI CP1257

Finnish_Swedish

Finnish_Swedish_CS_AS

Finnish_Swedish_CI_AS

finnois_suédois_CI_AI

Français

French_CS_AS

French_CI_AS

Français_CI_AI

Grec

Greek_CS_AS

Greek_CI_AS

Greek_CI_AI

Hébreu

BBF_Unicode_ _CS_AS CP1255

BBF_Unicode_Pref_ _CS_AS CP1255

Hebrew_CS_AS

BBF_Unicode_ _CI_AI CP1255

BBF_Unicode_ _CS_AI CP1255

Hebrew_CI_AS

Hebrew_CI_AI

Japonais (Babelfish 2.1.0 et versions ultérieures)

Japanese_CS_AS

Ci_AI japonais

Japanese_CI_AS

Korean_Wamsung

Korean_Wamsung_CS_AS

Korean_Wamsung_CI_AS

Korean_Wamsung_CI_AI

Caractères latins pour la page de code CP1252

latin1_general_cs_as

BBF_Unicode_General_CS_AS

BBF_Unicode_General_Pref_CS_AS

BBF_Unicode_Pref_ _CS_AS CP1

BBF_Unicode_ _CS_AS CP1

latin1_general_ci_as

latin1_general_ci_ai

latin1_general_cs_ai

BBF_Unicode_General_CI_AI

BBF_Unicode_General_CS_AI

BBF_Unicode_ _CI_AI CP1

BBF_Unicode_ _CS_AI CP1

Grec moderne

BBF_Unicode_ _CS_AS CP1253

BBF_Unicode_Pref_ _CS_AS CP1253

BBF_Unicode_ _CI_AI CP1253

BBF_Unicode_ _CS_AI CP1253

Modern_Spanish

Modern_Spanish_CS_AS

Modern_Spanish_CI_AS

CI_AI espagnol moderne

Mongol

Mongolian_CS_AS

Mongolian_CI_AS

Mongolian_CI_AI

Polonais

Polish_CS_AS

Polish_CI_AS

Polish_CI_AI

Thaï

BBF_Unicode_ _CS_AS CP874

BBF_Unicode_Pref_ _CS_AS CP874

Thai_CS_AS

BBF_Unicode_ _CI_AI CP874

BBF_Unicode_ _CS_AI CP874

Thai_CI_AS, Thai_CI_AI

Traditional_Spanish

Traditional_Spanish_CS_AS

Espagnol_traditionnel_CI_AS

Espagnol_traditionnel_CI_AI

Turc

BBF_Unicode_ _CS_AS CP1254

BBF_Unicode_Pref_ _CS_AS CP1254

Turkish_CS_AS

BBF_Unicode_ _CI_AI CP1254

BBF_Unicode_ _CS_AI CP1254

Turkish_CI_AS, Turkish_CI_AI

Ukrainien

Ukrainian_CS_AS

Ukrainian_CI_AS

Ukrainian_CI_AI

Vietnamien

BBF_Unicode_ _CS_AS CP1258

BBF_Unicode_Pref_ _CS_AS CP1258

Vietnamese_CS_AS

BBF_Unicode_ _CI_AI CP1258

BBF_Unicode_ _CS_AI CP1258

CI_AS vietnamien

Ci_ai vietnamien

Classement par défaut dans Babelfish

Auparavant, le classement par défaut des types de données pouvant être classées était pg_catalog.default. Les types de données et les objets qui dépendent de ces types de données sont classés selon le classement sensible à la casse. Cette condition peut avoir un impact sur les SQL objets T de l'ensemble de données avec un classement qui ne fait pas la distinction majuscules/majuscules. À partir de Babelfish 2.3.0, le classement par défaut pour les types de données collationnables (sauf TEXT etNTEXT) est le même que le classement dans le paramètre. babelfishpg_tsql.server_collation_name Lorsque vous passez à Babelfish 2.3.0, le classement par défaut est sélectionné automatiquement au moment de la création du cluster de bases de données, ce qui n'a aucun impact visible.