Change a Nullable column to NOT NULL with Default Value
I think you will need to do this as three separate statements. I've been looking around and everything i've seen seems to suggest you can do it if you are adding a column, but not if you are altering one.
ALTER TABLE dbo.MyTable
ADD CONSTRAINT my_Con DEFAULT GETDATE() for created
UPDATE MyTable SET Created = GetDate() where Created IS NULL
ALTER TABLE dbo.MyTable
ALTER COLUMN Created DATETIME NOT NULL
You may have to first update all the records that are null to the default value then use the alter table statement.
Update dbo.TableName
Set
Created="01/01/2000"
where Created is NULL