IF NOT EXISTS (SELECT column_name FROM information_schema.columns WHERE table_name = N'AdultInfo' and column_name = N'MaritalStatus') BEGIN alter table AdultInfo add MaritalStatus char(1) null ALTER TABLE [dbo].[AdultInfo] WITH CHECK ADD CONSTRAINT [CK_AdultInfo] CHECK (([MaritalStatus] IS NULL OR ([MaritalStatus] IN ('W','S','D','M')))) ENDproduces an error on the second line (adding CHECK constraint). Perhaps because the field is not added immediatelly?