Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment modifier le classement d'une base de données SQL Server à l'aide de T-SQL

Ceci est un article rapide pour montrer comment utiliser Transact-SQL pour modifier le classement d'une base de données dans SQL Server.

Voici le code de base :

USE master;  
GO
 
ALTER DATABASE Solutions  
COLLATE French_CI_AS ;  
GO 

Cela passe d'abord à la base de données principale, puis nous utilisons le ALTER DATABASE pour changer le classement de la base de données Solutions en classement French_CI_AS.

Vérifier le classement

Voici comment vérifier le classement de votre base de données :

SELECT DATABASEPROPERTYEX('Solutions','collation'); 

Cela renvoie une ligne avec une seule colonne qui vous indique quel est le classement de la base de données.

Vous pouvez l'exécuter pour vérifier le classement avant de le modifier, et vous pouvez l'exécuter ensuite pour vous assurer que le classement correspond exactement à ce que vous voulez.

Voici une autre façon de procéder :

SELECT collation_name 
FROM sys.databases
WHERE name = 'Solutions';

Vous pouvez omettre la dernière ligne pour renvoyer les classements de toutes les bases de données.

Classement par défaut du serveur

Voici comment renvoyer le classement par défaut du serveur :

EXECUTE sp_helpsort;

Cette procédure stockée renvoie le classement par défaut, ainsi que l'ordre de tri et le jeu de caractères pour l'instance de SQL Server.

Voici ce que cette procédure stockée a renvoyé sur ma version de SQL Server 2017 :

Latin1-General, case-insensitive, accent-sensitive, kanatype-insensitive, width-insensitive for Unicode Data, SQL Server Sort Order 52 on Code Page 1252 for non-Unicode Data

Vérifier les classements disponibles

Vous pouvez exécuter l'instruction suivante pour renvoyer une liste des classements pris en charge par votre version de SQL Server :

SELECT 
  name,
  description 
FROM sys.fn_helpcollations();