Le message d'erreur que je obtenir lorsque vous essayez de supprimer une colonne:Comment supprimer une colonne avec des dépendances d'objet dans SQL Server 2008?
L'objet « defEmptyString » dépend de la colonne « fkKeywordRolleKontakt ».
Msg 5074, niveau 16, état 1, ligne 43
ALTER TABLE DROP COLUMN fkKeywordRolleKontakt a échoué car un ou plusieurs objets accéder à cette colonne.
J'ai déjà essayé de trouver les contraintes par défaut, tel que décrit ici: SQL Server 2005 drop column with constraints
Malheureusement sans succès :(La ligne de retour est:
fkKeywordRolleKontakt 2 814625945 0 defEmptyString
Et je ne peux pas enlever l'une des fkKeywordRolleKontakt
et defEmptyString
Quelle est la bonne façon de se débarrasser de cette dépendance?
EDIT: Peut-être que c'est aussi important. La colonne fkKeywordRolleKontakt est de type udKeyword (nvarchar (50)) avec la valeur par défaut dbo.defEmptyString
.
Edit 2: Résolu
je pouvais résoudre le problème maintenant. Je suis désolé, je ne l'ai pas copier le message d'erreur complet, qui était:
Msg 5074, Level 16, State 1, Line 1
The object 'defEmptyString' is dependent on column 'fkKeywordRolleKontakt'.
Msg 5074, Level 16, State 1, Line 1
The object 'FK_tlkpRolleKontakt_tlkpKeyword' is dependent on column 'fkKeywordRolleKontakt'.
Msg 4922, Level 16, State 9, Line 1
ALTER TABLE DROP COLUMN fkKeywordRolleKontakt failed because one or more objects access this column.
je pourrais générer un script pour supprimer la colonne par un clic droit sur l'entrée de la colonne (dbo.tlkpRolleKontakt> Colonnes> fkKeywordRolleKontakt) (dans le Gestionnaire de serveur MSSQL), en sélectionnant Modifier et en supprimant la colonne. Ensuite, le tableau Designer> Générer le changement de script généré les commandes nécessaires:
ALTER TABLE dbo.tlkpRolleKontakt
DROP CONSTRAINT FK_tlkpRolleKontakt_tlkpKeyword
EXECUTE sp_unbindefault N'dbo.tlkpRolleKontakt.fkKeywordRolleKontakt'
ALTER TABLE dbo.tlkpRolleKontakt
DROP COLUMN fkKeywordRolleKontakt
Ca y est :)
Merci, vous devez ajouter votre modification comme réponse et l'accepter. – Sprockincat
@Sprockincat Terminé. –