select distinct o.name as TableName, case o.xtype when 'U' then 'Table' when 'V' then 'View' end as Type, sp.name, isnull(sp.value, '') as Description from sysobjects o left outer join dbo.sysproperties sp on sp.id = o.id and sp.type = 3 where o.xtype in ('U', 'V') and permissions(o.id) != 0 order by TableName, sp.name