SqlServer非常有用却又不那么常用的查询
1、select * from syscomments where text like '%?%'
参数1:存储过程或者视图、函数的部分内容
常用来根据参数1的关键字把视图或者存储过程、函数查出来,查出来的id对应sysobjects里面的id
2、select * from sysobjects where name='?' and type = '?'
参数1:存储过程或者视图、函数、表、约束的名字
参数2:对象的类型,值为下列选项中的一个 C = CHECK 约束 D = 默认值或 DEFAULT 约束 F = FOREIGN KEY 约束
FN = 标量函数 IF = 内嵌表函数 K = PRIMARY KEY 或 UNIQUE 约束
L = 日志 P = 存储过程 R = 规则 RF = 复制筛选存储过程
S = 系统表 TF = 表函数 TR = 触发器 U = 用户表 V = 视图 X = 扩展存储过程
常用来判断是否存在某个对象,例如创建存储过程时,要判断存储过程是否存在,存在则需要先删除过程,再创建过程
3、select * from INFORMATION_SCHEMA.COLUMNS where COLUMN_NAME = '?'
参数1:列名
常用来判断列是否存在某个表中