Set a existing column of MS SQL table as NOT NULL

How to Set a existing column of MS SQL table as NOT NULL?


ALTER TABLE tablename
ALTER COLUMN columnname datatype NOT NULL

You will obviously have to make sure that the column does not contain any NULL values before doing this.

E.g.

ALTER TABLE orders
ALTER COLUMN customer_id INT NOT NULL

Firstly ensure that the fields have non null values. In this case I'm working with a field that has a GUID nvarchar so I'll do

UPDATE tablename 
SET    fieldname = Newid() 
WHERE  fieldname IS NULL; 

Then as Adam Ralph says

ALTER TABLE tablename ALTER COLUMN fieldname datatype NOT NULL