Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
S’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Point de terminaison d’analytique SQL dans Microsoft Fabric
Entrepôt dans Microsoft Fabric
Base de données SQL dans Microsoft Fabric
Spécifie le nom du classement Windows dans la COLLATE clause dans SQL Server. Le nom de classement Windows est composé d'un indicateur de classement et de styles de comparaison.
Conventions de la syntaxe Transact-SQL
Syntaxe
<Windows_collation_name> ::=
<CollationDesignator>_<ComparisonStyle>
<ComparisonStyle> ::=
{ <CaseSensitivity>_<AccentSensitivity> [ _<KanatypeSensitive> ] [ _<WidthSensitive> ] [ _<VariationSelectorSensitive> ]
}
| { _UTF8 }
| { _BIN | _BIN2 }
Arguments
CollationDesignator
Spécifie les règles de classement de base utilisées par le classement Windows. Les règles de classement de base couvrent les points suivants :
- Les règles de tri et de comparaison appliquées quand le tri de dictionnaire est spécifié. Les règles de tri sont basées sur l'alphabet ou la langue ;
- La page de codes utilisée pour stocker les données varchar.
Quelques exemples :
-
Latin1_GeneralouFrench: les deux utilisent la page1252de codes . -
Turkish: utilise la page1254de codes .
CaseSensitivity
CI spécifie l’insensible à la casse, CS spécifie la casse sensible à la casse.
AccentSensitivity
AI spécifie l’accent-insensible, AS spécifie les accentuations sensibles.
KanatypeSensitive
Omettre cette option spécifie kanatype-insensible, KS spécifie kanatype-sensitive.
WidthSensitivity
Omettre cette option spécifie l’insensible à la largeur, WS spécifie la largeur sensible.
VariationSelectorSensitivity
S’applique à : SQL Server 2017 (14.x) et versions ultérieures
Omettre cette option spécifie le sélecteur de variante non sensible, VSS spécifie le sélecteur de variante sensible.
UTF8
S’applique à : SQL Server 2019 (15.x) et versions ultérieures
Spécifie l’encodage UTF-8 à utiliser pour les types de données éligibles. Pour plus d’informations, voir Classement et prise en charge d’Unicode.
{ BIN | BIN2 }
-
BINspécifie l’ordre de tri binaire à compatibilité descendante à utiliser. -
BIN2spécifie l’ordre de tri binaire qui utilise la sémantique de comparaison de points de code.
Notes
Selon la version du classement, certains points de code peuvent ne pas avoir de poids de tri, ou des mappages majuscules/minuscules définis. Par exemple, comparez la sortie de la LOWER fonction lorsqu’elle a le même caractère, mais dans différentes versions du même classement :
SELECT NCHAR(504) COLLATE Latin1_General_CI_AS AS [Uppercase],
NCHAR(505) COLLATE Latin1_General_CI_AS AS [Lowercase];
Voici le jeu de résultats.
| Nom de la colonne | Result |
|---|---|
Uppercase |
Ǹ |
Lowercase |
ǹ |
La première instruction affiche les formes majuscules et minuscules de ce caractère dans l’ancien classement (le classement n’affecte pas la disponibilité des caractères lors de l’utilisation des données Unicode).
SELECT LOWER(NCHAR(504) COLLATE Latin1_General_CI_AS) AS [Version80Collation],
LOWER(NCHAR(504) COLLATE Latin1_General_100_CI_AS) AS [Version100Collation];
Voici le jeu de résultats.
| Nom de la colonne | Result |
|---|---|
Version80Collation |
Ǹ |
Version100Collation |
ǹ |
La deuxième instruction montre qu’un caractère majuscule est retourné lorsque le classement est Latin1_General_CI_AS, car ce point de code n’a pas de mappage en minuscules défini dans ce classement.
Lors de l'utilisation de certaines langues, il peut être essentiel d'éviter les classements anciens. C'est par exemple le cas pour le télougou.
Dans certains cas, les classements Windows et les classements SQL Server peuvent générer différents plans de requête pour la même requête.
Exemples
Le tableau suivant décrit quelques exemples de noms de classement Windows.
| Classement | Description |
|---|---|
Latin1_General_100_CI_AS |
Le classement utilise les règles de tri du dictionnaire latin1 général et est mappé à la page 1252de codes. Il s’agit d’un classement de version _100 , qui ne respecte pas la casse (CI) et respecte les accents (AS). |
Estonian_CS_AS |
Le classement utilise les règles de tri du dictionnaire estonien et mappe à la page 1257de codes. Il s’agit d’un classement de version _80 (implicite par aucun numéro de version dans le nom) et respectant la casse (CS) et sensible aux accents (AS). |
Japanese_Bushu_Kakusu_140_BIN2 |
Le classement utilise des règles de tri de point de code binaire et est mappé à la page 932de codes. Il s’agit d’un classement de version _140 , et les règles de tri de dictionnaire Bushu Kakusu japonaises sont ignorées. |
Classements Windows
Pour énumérer les classements Windows pris en charge par votre d'instance de SQL Server, exécutez la requête suivante.
SELECT *
FROM sys.fn_helpcollations()
WHERE [name] NOT LIKE N'SQL%';