1、列出系统所有数据库信息
select * from sys.databases
2、判断数据库是否存在,若存在则删除
if exists (select * from sys.databases where name='dbName')
drop database dbName
3、列出所有的数据表
select * from sys.tables
检索数据库中的表、视图方法类似,只是from后分别跟sys.tables和sys.views。
4、列出所有的系统对象
select * from sys.system_objects -- system_objects中包含系统存储过程(type为P)、视图(type为V)等
5、列出所有存储过程(这里不包含系统存储过程)
select * from sys.procedures
6、判断存储过程是否存在,存在则删除
if exists (select * from sys.procedures where name=‘procName')
drop proc procName
也可以用 if object_id('procName','P') is not null drop proc procName
在sql server 2008中sys.objects中包含用户创建的对象和系统表等,不包含系统存储过程!
type 代表的对象类型。可以是下列对象类型中的一种:
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 = 扩展存储过程