J'ai une colonne avec un "DÉFAUT" de la contrainte. J'aimerais créer un script qui sera en baisse cette colonne.
Le problème est qu'il retourne cette erreur:
Msg 5074, Level 16, State 1, Line 1
The object 'DF__PeriodSce__IsClo__4BCC3ABA' is dependent on column 'IsClosed'.
Msg 4922, Level 16, State 9, Line 1
ALTER TABLE DROP COLUMN IsClosed failed because one or more objects access this column.
Je ne pouvais pas trouver un moyen facile de supprimer une colonne et toutes ses contraintes associées (seulement trouvé grand scripts qui regarde dans la table système... il DOIT y (!!) être un "bon" moyen de le faire.)
Et comme la contrainte par DÉFAUT le nom a été généré de façon aléatoire, je peux pas le laisser tomber par nom.
Mise à jour :
Le type de contrainte est "par DÉFAUT".
J'ai vu les solutions que vous avez proposées, mais je les trouve tous vraiment "sale"... vous Ne pensez pas? Je ne sais pas si c'est avec Oracle ou MySQL, mais il est possible de faire quelque chose comme:
DROP COLUMN xxx CASCADE CONSTRAINTS
Et il supprime toutes les contraintes qui y sont liées... Ou au moins, il va automatiquement les contraintes mappé à la colonne (au moins VÉRIFIER les contraintes!)
Est-il rien de tout cela dans MSSQL?