您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

sp_checksource

语法


sp_checksource [<objname>[, <tabname>[, <username>]]]

参数

<objname>

是要检查其源文本是否存在的已编译对象。

<tabname>

是要检查在其上定义的所有检查约束、缺省值和触发器是否存在的表或视图的名称。

<username>

是拥有要检查源文本是否存在的已编译对象的用户的名称。

示例

示例 1

检查当前数据库中所有已编译对象的源文本是否存在:


sp_checksource

示例 2

检查名为 titleview 的视图的源文本是否存在:


sp_checksource titleview

示例 3

检查 Mary 拥有的名为 titls_vu 的视图的源文本是否存在:


sp_checksource title_vu, @username = Mary

示例 4

检查自定义存储过程 list_phone_proc 的源文本是否存在:


sp_checksource list_phone_proc

示例 5

检查在名为 my_tab 的表上定义的所有检查约束、触发器和声明缺省值的源文本是否存在:


sp_checksource @tabname = "my_tab"

示例 6

检查视图 my_vu 和在 my_tab 表上定义的所有检查约束、触发器和缺省值的源文本是否存在:


sp_checksource @objname = "my_vu", @tabname = "my_tab"

示例 7

检查 Tom 拥有的所有已编译对象的源文本是否存在:


sp_checksource @username = "Tom"

示例 8

检查“pred1”谓词的源文本是否存在:


sp_checksource pred1

用法

使用 sp_checksource 时,还存在一些其它注意事项:

  • sp_checksource 检查指定的已编译对象的源文本是否存在。如果指定的对象存在源文本,则 sp_checksource 返回 0。如果指定的对象不存在源文本,则 sp_checksource 返回 1。

  • 如果不提供任何参数,则 sp_checksource 检查当前数据库中所有已编译对象的源文本是否存在。

  • 要使用不带任何参数的 sp_checksource,您必须是数据库所有者或系统管理员。

  • sp_checksource 用于对用户定义函数的文本进行加密。