Use a CURSOR to loop and ALTER DEFAULT CONSTRAINTs
--declare variables to use in cursor declare @tablename varchar(1000) declare @columnname varchar(1000) declare @defaultvalue varchar(1000) declare @constraintname varchar(1000) -- create the cursor declare _iterativecursor cursor for select tablename2, columnname2, defaultvalue2, consname2 from temp_default_list1 --open the cursor open _iterativecursor --fetch the next record from the cursor fetch next from _iterativecursor into @tablename, @columnname, @defaultvalue, @constraintname -- loop through the table cursor reading each row of data and updating table values while @@fetch_status = 0 begin --print @tablename2 --print @constraintname2 --print @defaultvalue2 --print @columnname2 -- we can't use alter table in a cursor so we have to hack something together by using the exec statement EXEC ('ALTER TABLE ' + @tablename + ' ADD CONSTRAINT ' + @constraintname + ' DEFAULT ' + @defaultvalue + ' FOR ' + @Columnname) fetch next from _iterativecursor into @tablename, @columnname, @defaultvalue, @constraintname end --release the cursor close _iterativecursor deallocate _iterativecursor
1,122 total views