Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette rubrique explique comment définir et modifier le classement de base de données dans SQL Server 2014 à l’aide de SQL Server Management Studio ou de Transact-SQL. Si aucun classement n’est spécifié, le classement du serveur est utilisé.
Dans cette rubrique
Avant de commencer :
Pour définir ou modifier le classement de base de données à l’aide de :
Avant de commencer
Limitations et restrictions
Les classements Unicode Windows peuvent uniquement être utilisés avec la clause COLLATE pour appliquer des classements aux
ncharnvarcharntexttypes de données au niveau des colonnes et des expressions. Ils ne peuvent pas être utilisés avec la clause COLLATE pour modifier le classement d’une base de données ou d’une instance de serveur.Si le classement spécifié ou le classement utilisé par l’objet référencé utilise une page de codes qui n’est pas prise en charge par Windows, le moteur de base de données affiche une erreur.
Recommandations
Vous trouverez les noms de classement pris en charge dans le nom du classement Windows (Transact-SQL) et le nom du classement SQL Server (Transact-SQL) ; ou vous pouvez utiliser la fonction système sys.fn_helpcollations (Transact-SQL).
Lorsque vous modifiez le classement de base de données, vous modifiez les éléments suivants :
Tout
char,varchartextnchar,nvarcharountextcolonnes dans les tables système est remplacé par le nouveau classement.Tous les
char,varchar,text,nchar,nvarchar, ountextparamètres existants et les valeurs de retour scalaires pour les procédures stockées et les fonctions définies par l'utilisateur sont modifiés vers la nouvelle collation.Les types de données système
char,varchar,text,nchar,nvarchar, ountext, et tous les types de données définis par l'utilisateur en fonction de ces types de données système, sont modifiés par la nouvelle collation par défaut.
Vous pouvez modifier le classement des nouveaux objets créés dans une base de données utilisateur à l’aide de la clause COLLATE de l’instruction ALTER DATABASE . Cette instruction ne modifie pas le classement des colonnes dans les tables définies par l’utilisateur existantes. Ils peuvent être modifiés à l’aide de la clause COLLATE de ALTER TABLE.
Sécurité
Autorisations
CRÉER UNE BASE DE DONNÉES
Nécessite l’autorisation CREATE DATABASE dans la base de données master , ou nécessite l’autorisation CREATE ANY DATABASE ou ALTER ANY DATABASE.
Modifier la base de données
Nécessite l'autorisation ALTER sur la base de données.
Utilisation de SQL Server Management Studio
Pour définir ou modifier le classement de la base de données
Dans l’Explorateur d’objets, connectez-vous à une instance du moteur de base de données SQL Server, développez cette instance, puis développez bases de données.
Si vous créez une base de données, cliquez avec le bouton droit sur Bases de données, puis cliquez sur Nouvelle base de données. Si vous ne souhaitez pas le classement par défaut, cliquez sur la page Options , puis sélectionnez un classement dans la liste déroulante Classement .
Sinon, si la base de données existe déjà, cliquez avec le bouton droit sur la base de données souhaitée, puis cliquez sur Propriétés. Cliquez sur la page Options, puis sélectionnez un interclassement dans la liste déroulante Interclassement.
Une fois que vous avez terminé, cliquez sur OK.
Utilisation de Transact-SQL
Pour définir l'interclassement de la base de données
Connectez-vous au moteur de base de données.
Dans la barre d'outils standard, cliquez sur Nouvelle requête.
Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter. Cet exemple montre comment utiliser la clause COLLATE pour spécifier un nom de classement. L’exemple crée la base de données
MyOptionsTestqui utilise leLatin1_General_100_CS_AS_SCclassement. Après avoir créé la base de données, exécutez l’instructionSELECTpour vérifier le paramètre.
USE master;
GO
IF DB_ID (N'MyOptionsTest') IS NOT NULL
DROP DATABASE MyOptionsTest;
GO
CREATE DATABASE MyOptionsTest
COLLATE Latin1_General_100_CS_AS_SC;
GO
--Verify the collation setting.
SELECT name, collation_name
FROM sys.databases
WHERE name = N'MyOptionsTest';
GO
Pour modifier l'interclassement de la base de données
Connectez-vous au moteur de base de données.
Dans la barre d'outils standard, cliquez sur Nouvelle requête.
Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter. Cet exemple montre comment utiliser la clause COLLATE dans une instruction ALTER DATABASE pour modifier le nom du classement. Exécutez l’instruction
SELECTpour vérifier la modification.
USE master;
GO
ALTER DATABASE MyOptionsTest
COLLATE French_CI_AS ;
GO
--Verify the collation setting.
SELECT name, collation_name
FROM sys.databases
WHERE name = N'MyOptionsTest';
GO
Voir aussi
Prise en charge d'Unicode et du classement
sys.fn_helpcollations (Transact-SQL)
sys.databases (Transact-SQL)
Nom du classement SQL Server (Transact-SQL)
Nom de l'ordre de tri Windows (Transact-SQL)
COLLATE (Transact-SQL)
Priorité du classement (Transact-SQL)
CRÉER TABLE (Transact-SQL)
CREATE DATABASE (SQL Server Transact-SQL)
MODIFIER LA TABLE (Transact-SQL)
MODIFIER LA BASE DE DONNÉES (Transact-SQL)