/* 1. change database name. 2. By default this code prints queries but if you want drop all default values then remove comment from EXEC command. */ USE MyBugtrackerDB DECLARE @TABLE_NAME VARCHAR(128) DECLARE @COLUMN_NAME VARCHAR(128) DECLARE @DEFAULT_NAME VARCHAR(128) DECLARE @CMD VARCHAR(1000) DECLARE TablesCursor SCROLL CURSOR FOR SELECT name AS table_name FROM sysobjects WHERE xtype = 'U' AND Left(name, 7) = 'mantis_' OPEN TablesCursor FETCH NEXT FROM TablesCursor INTO @TABLE_NAME WHILE @@FETCH_STATUS = 0 BEGIN DECLARE ColumnsCursor SCROLL CURSOR FOR SELECT so.name FROM sysobjects so INNER JOIN sysconstraints sc ON so.id = sc.constid WHERE object_name(so.parent_obj) = @TABLE_NAME AND so.xtype = 'D' OPEN ColumnsCursor FETCH NEXT FROM ColumnsCursor INTO @DEFAULT_NAME WHILE @@FETCH_STATUS = 0 BEGIN SET @CMD = 'ALTER TABLE ' + @TABLE_NAME + ' DROP CONSTRAINT ' + @DEFAULT_NAME PRINT @CMD --EXEC (@CMD) FETCH NEXT FROM ColumnsCursor INTO @DEFAULT_NAME END CLOSE ColumnsCursor DEALLOCATE ColumnsCursor FETCH NEXT FROM TablesCursor INTO @TABLE_NAME END CLOSE TablesCursor DEALLOCATE TablesCursor