Comment définir une colonne existante de la table MS SQL comme NOT NULL?Définir une colonne existante de la table MS SQL comme NOT NULL
38
A
Répondre
78
ALTER TABLE tablename
ALTER COLUMN columnname datatype NOT NULL
Vous devrez évidemment vous assurer que la colonne ne contient aucune valeur NULL avant de le faire.
E.g.
ALTER TABLE orders
ALTER COLUMN customer_id INT NOT NULL
2
Vous pouvez également ajouter un par défaut contraint la colonne.
11
Assurez-vous tout d'abord que les champs ont des valeurs non nulles. Dans ce cas, je travaille avec un champ qui a un GUID nvarchar donc je vais faire
UPDATE tablename
SET fieldname = Newid()
WHERE fieldname IS NULL;
Puis, comme Adam Ralph dit
ALTER TABLE tablename ALTER COLUMN fieldname datatype NOT NULL
Questions connexes
- 1. Impact pour augmenter la longueur de colonne d'une table existante
- 2. Incrémentation de la colonne int dans la table MS SQL Server via SP
- 3. définir la colonne int dans DB à null
- 4. Ajout de la valeur par défaut à la colonne existante
- 5. MS SQL 2008 cast null à la chaîne
- 6. Générer une valeur de colonne comme CSV T-SQL 2000
- 7. Ajouter une colonne id et la remplir dans une table existante dans Rails?
- 8. Normaliser une base de données MS Access existante
- 9. Définir 1 colonne d'une requête MYSQL à Null
- 10. Suppression de colonnes dans MS SQL Server
- 11. MS SQL: convertir la colonne Datetime en nvarchar
- 12. Ajouter une colonne à une table existante et les numéroter de manière unique
- 13. Comment modifier le type de données de colonne sans affecter la largeur de colonne existante
- 14. SQL Server 2005: comment ajouter une colonne à une table au début de la table?
- 15. Split Ms Sql 2005 Table à deux ou plusieurs parties
- 16. générer une commande sql "create table" basée sur une table existante dans mysql
- 17. SQL Server: Copie de la colonne dans la table
- 18. Remplir toute la colonne de la table SQL
- 19. SQL: Sélectionnez comme colonne de deux tables
- 20. Migrer la table de MS SQL Server vers MySQL
- 21. Comment créer par programme la table MS Access dans SQL Server à l'aide de SSIS?
- 22. MS-SQL Dans l'instruction
- 23. Comment écrire sql pour définir la valeur par défaut d'une colonne dans sql server 2005?
- 24. Existe-t-il une méthode pour copier une nouvelle colonne dans une table existante et copier les informations de colonne d'une autre table dans Oracle?
- 25. Comment définir une valeur d'ID initiale sur une table create_table?
- 26. Dans une migration Rails, est-il possible d'indiquer qu'une colonne nouvellement ajoutée doit être avant ou après une colonne existante dans la table?
- 27. Comment définir la largeur de tous les éléments dans une colonne de table avec CSS
- 28. Ajout d'un datarow d'une table existante à une nouvelle table
- 29. Comment insérer une vue dans une cellule de table existante?
- 30. ActiveRecord Joindre la table pour la base de données existante
Notez que vous devez remplacer « type de données » avec votre colonne réelle datatype , donc cela pourrait ressembler à ceci: clients ALTER TABLE ALTER COLUMN adresse_id INT NON NULL –
@JohnZumbrum merci pour le commentaire. J'ai édité la réponse pour montrer un exemple. –