Maison > base de données > tutoriel mysql > Comment supprimer une colonne de table avec des objets dépendants dans SQL Server ?

Comment supprimer une colonne de table avec des objets dépendants dans SQL Server ?

Linda Hamilton
Libérer: 2024-12-24 22:30:11
original
452 Les gens l'ont consulté

How to Drop a Table Column with Dependent Objects in SQL Server?

Suppression de colonnes de table avec des objets dépendants

Lorsque vous essayez de supprimer des colonnes d'une table à l'aide de la syntaxe ALTER TABLE DROP COLUMN, vous pouvez rencontrer le problème erreur : "Msg 4922, niveau 16, état 9, ligne 2nALTER TABLE DROP COLUMN Échec car un ou plusieurs objets accèdent à cette colonne." Cette erreur se produit lorsque la colonne que vous essayez de supprimer est référencée par d'autres objets de la base de données, tels que des contraintes de clé étrangère ou des valeurs par défaut.

Solution : Supprimer les contraintes dépendantes

Pour réussir à supprimer la colonne, vous devez d'abord supprimer toutes les contraintes qui en dépendent. Dans ce cas, le message d'erreur fait référence à une contrainte par défaut nommée « DF__CompanyTr__Creat__0CDAE408 ». Pour supprimer cette contrainte, utilisez la syntaxe suivante :

alter table CompanyTransactions drop constraint [df__CompanyTr__Creat__0cdae408];
Copier après la connexion

Une fois les contraintes dépendantes supprimées, vous pouvez ensuite exécuter la requête d'origine pour supprimer la colonne :

alter table CompanyTransactions drop column [Created];
Copier après la connexion

Migrations Code First

Si vous utilisez des migrations Code First pour gérer votre schéma de base de données, ce problème peut survenir si les migrations sont devenues obsolètes. de synchronisation. Dans de tels cas, il est recommandé de recréer les migrations et de les réexécuter pour garantir que la base de données est dans un état cohérent.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal