select o.name as objectsname , c.name as columnsname , t.name as columnstype , c.length as columnslength
from sysobjects as o , syscolumns as c , systypes as t
where o.type in ('u','v') and o.id = c.id and c.xtype = t.xtype
order by o.name , c.name , t.name , c.length
--sql server得到表、视图、存储过程、触发器、字段的信息
select name from sysobjects where xtype='tr' --所有触发器
select name from sysobjects where xtype='p' --所有存储过程
select name from sysobjects where xtype='v' --所有视图
select name from sysobjects where xtype='u' --所有表
--sql server修改表结构后批量更新所有视图
create procedure refreshallviewasbegin
declare mycursor cursor
for select name from dbo.sysobjects where objectproperty(id, n'isview') = 1
and (not name in ('sysconstraints','syssegments'))declare @name varchar(40) open mycursor fetch next from mycursor into @name while (@@fetch_status <> -1) begin if (@@fetch_status <> -2) begin exec sp_refreshview @name end fetch next from mycursor into @name end close mycursor deallocate mycursor end