Suppression de la propriété Identity d'une colonne de table SQL Server
Le traitement de tables SQL Server volumineuses (supérieures à 5 Go) nécessite une attention particulière lors de la modification des propriétés des colonnes. La suppression directe de la propriété d'identité via SQL Server Management Studio (SSMS) peut entraîner des délais d'attente. Ce guide fournit une solution basée sur T-SQL.
Approche T-SQL :
Bien que vous ne puissiez pas supprimer directement l'attribut d'identité une fois attribué, T-SQL propose une solution de contournement.
Méthode 1 : supprimer la colonne entière :
Si les données de la colonne ne sont plus nécessaires, la solution la plus simple est de la supprimer :
<code class="language-sql">ALTER TABLE yourTable DROP COLUMN yourColumn;</code>
Méthode 2 : Conserver les données tout en supprimant l'identité :
Pour conserver les données de la colonne tout en supprimant la propriété d'identité, procédez comme suit :
Exemple utilisant une table Customers
avec une colonne d'identité CustomerID
:
<code class="language-sql">ALTER TABLE Customers ADD CustomerID_New INT NOT NULL; UPDATE Customers SET CustomerID_New = CustomerID; ALTER TABLE Customers DROP COLUMN CustomerID; EXEC sp_rename 'Customers.CustomerID_New', 'CustomerID', 'COLUMN';</code>
Considérations importantes :
Cette méthode, bien qu'efficace, implique plusieurs étapes et peut prendre du temps, en particulier pour les grandes tables. Tenez compte de l’impact sur les performances et planifiez en conséquence. La commande sp_rename
spécifie explicitement « COLONNE » pour garantir l'opération de renommage correcte.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!