Dans SQL Server, j'ai une nouvelle colonne sur une table:Puis-je créer une contrainte par défaut nommée dans une instruction de colonne add dans SQL Server?
ALTER TABLE t_tableName
ADD newColumn NOT NULL
Cela échoue parce que je précise NOT NULL sans spécifier une contrainte par défaut. La table ne doit pas avoir de contrainte par défaut. Pour contourner ce problème, je peux créer la table avec la contrainte par défaut, puis la supprimer.
Cependant, il ne semble pas y avoir moyen de spécifier que la contrainte par défaut doit être nommée dans le cadre de cette instruction, donc mon seul moyen de m'en débarrasser est d'avoir une procédure stockée qui la regarde dans la table sys.default_constraints.
Ceci est un peu brouillon/verbeux pour une opération qui est susceptible de se produire beaucoup. Quelqu'un at-il de meilleures solutions pour cela?
Works en 2012 aussi. Détails de Gory: http://msdn.microsoft.com/en-us/library/ms187742.aspx – adam77