Comment supprimer un index SQL Server avec un script ?

Ce tutoriel T-SQL explique comment supprimer un index SQL Server d’une table existante, avec un script. Et donc avec la commande DROP INDEX. Il est important de comprendre l’importance de mettre en place des plans de maintenance. Le but est d’améliorer les performances et la gestion des ressources avec les bases MS SQL.

La suppression d’index inutiles peut aider à réduire la taille de la base de données. Mais aussi à améliorer les performances des requêtes. Dans ce tutoriel, vous trouverez un exemple de code que vous pourrez copier et ajuster avec les noms de l’index et de la table pour supprimer l’index souhaité.

1. Créer 2 indexs SQL Server à supprimer et avec les mêmes noms

Gardez à l’esprit que chaque index est nommé de manière unique pour une table donnée. Nommer les index avec le préfixe de la table permet de faciliter leur gestion dans le code T-SQL. Cette commande SQL Server utilise la commande DROP et le mot clef INDEX. Le nom complet de l’index et bien sûr le nom de la table suivent la commande DROP INDEX.

Dans le script T-SQL ci-dessous, les deux tables dbo.SALES et dbo.SALES_2 ont le même index créé avec le même nom.

CREATE TABLE [dbo].[SALES]
(
   [Year] TINYINT,
   [MonthName] NVARCHAR(50),
   [MonthCurrent] BIT,
   [NumberMonth] TINYINT,
   [EmployeeNumber] SMALLINT,
   [NumberOfClients] INTEGER,
   [NumberOfSales] BIGINT,
   [Amount_ET] NUMERIC(15,5),
   [Amount_IT] DECIMAL(15,5)
);

CREATE INDEX indexYearMonth
ON [dbo].[SALES] ([Year], [MonthName]);
GO

CREATE TABLE [dbo].[SALES_2]
(
   [Year] TINYINT,
   [MonthName] NVARCHAR(50),
   [MonthCurrent] BIT,
   [NumberMonth] TINYINT,
   [EmployeeNumber] SMALLINT,
   [NumberOfClients] INTEGER,
   [NumberOfSales] BIGINT,
   [Amount_ET] NUMERIC(15,5),
   [Amount_IT] DECIMAL(15,5)
);

CREATE INDEX indexYearMonth
ON [dbo].[SALES_2] ([Year], [MonthName]);
GO

2. Supprimer l’index sur la première table SQL Server

Deuxièmement, c’est la même syntaxe que la plupart des objets supprimés avec des requêtes de type Data Definition Language (DDL).

DROP INDEX indexYearMonth
	ON [dbo].[SALES] ;
GO

De plus, veuillez noter qu’après avoir supprimé l’index, toutes les requêtes utiliseront la clé primaire de la table SQL. Cela peut donc avoir un impact énorme sur les performances.

Conclusion sur la suppression d’indexs SQL Server

Pour finir, ce court tutoriel T-SQL explique comment utiliser la commande DROP INDEX pour supprimer un index SQL Server avec un script. La suppression d’index inutiles peut aider à réduire significativement la taille de la base de données et améliorer les performances des requêtes.

La syntaxe pour supprimer un index est simple, et il est important de nommer les index de manière unique pour une table donnée pour faciliter leur gestion dans le code T-SQL.

Soyez le premier à commenter

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.


*