Technical Article

Generate all database default DDL

,

This will generate all default DDL in a given database.

declare @DefName varchar(128)
declare @OwnerName varchar(128)
declare @DefID int
declare @RowCount int
declare @CountStatus int
declare @DDL varchar(8000)

declare DefCur cursor for
select so.name, su.name, so.id
from sysobjects so inner join sysusers su
  on so.uid = su.uid
  inner join syscomments sc on sc.id = so.id
where so.type = 'D'
and so.id not in (select constid from sysconstraints)
order by so.name

open DefCur

fetch next from DefCur into @DefName, @OwnerName, @DefID

while @@FETCH_STATUS = 0
begin
select @DDL = ctext 
from syscomments 
where id = @DefID 

PRINT @DDL
    PRINT 'GO' + Char(13)

fetch next from DefCur into @DefName, @OwnerName, @DefID
end -- @@Fetch = 0 for ViewCur
close DefCur
deallocate DefCur

Rate

You rated this post out of 5. Change rating

Share

Share

Rate

You rated this post out of 5. Change rating