if object_id('tempdb..#ApprovalTable') is not null drop table #ApprovalTable
if exists (select * from tempdb.dbo.sysobjects where id = object_id(N'tempdb..#xmlData') and type='U')
BEGIN
drop table #xmlData --清除上次的臨時表
END
-- 查詢所有列名
select name from syscolumns where id=(select max(id) from sysobjects where xtype='v' and name='視圖名稱')
--查詢表和視圖
select * from information_schema.tables
--查詢視圖
select * from information_schema.views
--查詢數據庫所有表
select * from sysobjects where xtype= 'U ' and status> 0
--查詢指定視圖下所有字段類型長度名稱
SELECT name,type_name(xtype) AS type,length,(type_name(xtype)+'('+CONVERT(varchar,length)+')') as t
FROM syscolumns
WHERE (id = OBJECT_ID('視圖名稱'))
--查詢所有視圖
Select * from sys.views
-- 查詢所有存儲過程
Select * from sys.procedures
--查詢所有數據庫
select [name] from [sysdatabases] order by [name]
--查詢指定數據庫下的所有表名
select Name from database名稱..sysobjects where xtype='u' and status>=0
Select * from database名稱.sys.tables
sysobjects
在數據庫內創建的每個對象(約束、默認值、日志、規則、存儲過程等)在表中占一行。只有在 tempdb 內,每個臨時對象才在該表中占一行。
列名 數據類型 描述
name sysname 對象名。
Id int 對象標識號。
xtype char(2) 對象類型。可以是下列對象類型中的一種:
C = CHECK 約束
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束
L = 日志
FN = 標量函數
IF = 內嵌表函數
P = 存儲過程
PK = PRIMARY KEY 約束(類型是 K)
RF = 復制篩選存儲過程
S = 系統表
TF = 表函數
TR = 觸發器
U = 用戶表
UQ = UNIQUE 約束(類型是 K)
V = 視圖
X = 擴展存儲過程
詳情信息參考:http://blog.csdn.net/jinhuisystem/article/details/6910673