Comment puis-je ajouter une colonne à une table dans SQL Server n'autorise pas les valeurs null?
J'ai un tableau que je veux ajouter une colonne de bits, que je tiens à false par défaut pour toutes les données existantes.
Comment puis-je modifier ma table de telle façon qu'il me permet de préciser PAS NULL avant j'ai inséré faux pour mes lignes existantes?
Dois-je créer nullable, faire une insertion de commutateur non nullable?
- C'est une façon, oui.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez ajouter la colonne et de fournir la valeur par défaut à utiliser pour toutes les lignes existantes.
L' "avec des valeurs" clause propigates la valeur par défaut dans des lignes existantes.
Comme une alternative pour les réponses répertoriées, il existe une autre syntaxe disponibles qui peuvent convenir à certaines personnes de mieux, par exemple, si vous utilisez des outils comme "ReadyRoll'.
Découvrez cette SORTE de réponse de voir pourquoi de nommage de vos contraintes (le
df_Bar
ci-dessus) est agréable.Pour ce qu'il vaut, vous pouvez lancer le Gestionnaire Enterprise manager, effectuez les modifications dans l'INTERFACE, et puis de générer un Script de Modification - et vous pouvez voir comment il allait accomplir ce type de tâches.
J'ai aussi fait comme vous le dites "créer nullable, faire une insertion de commutateur non nullable". Je n'ai pas eu un problème de le faire de cette façon.
Je n'ai pas encore eu besoin de trouver une meilleure façon, mais je me demande si il existe une autre façon....
J'ai l'habitude de créer le champ comme nullable avec un défaut que de fausses dans votre cas, de mettre à jour tous les champs qui ont été à la base de données avant puis de passer null