在平时的使用中,但需要看表结构以及存储过程的定义语句时,你是不是这样做的?
看表结构
看存储过程内容
那么……
你一定需要下面的这种方法。
首先需要了解数据库中的一种对象:存储过程(Stored Procedure),简称SP。
微软SQL Server帮助文档中,关于存储过程的定义如下:
SQL Server 中的存储过程是由一个或多个 Transact-SQL 语句或对 Microsoft .NET framework 公共语言运行时 (CLR) 方法的引用构成的一个组。
过程与其他编程语言中的构造相似,这是因为它们都可以: ???
接受输入参数并以输出参数的格式向调用程序返回多个值。
包含用于在数据库中执行操作的编程语句(这包括调用其他过程)。
向调用程序返回状态值,以指明成功或失败(以及失败的原因)。
简单来说,存储过程就是一组执行一定逻辑的SQL语句,执行存储过程就是执行这组语句。
存储过程有四种:
系统
用户定义
临时
扩展的用户定义过程
下面,我们来看看怎么通过系统存储过程来实现上面的操作。
1.SP_HELP
功能:报告有关数据库对象(sys.sysobjects 兼容视图中列出的所有对象)、用户定义数据类型或某种数据类型的信息。
使用示例:(其中E_01为数据库中的表)
通过这个系统SP,我们可以很清楚的看到这个对象(E_01)的信息,比如所有者,对象类型,创建时间,列信息(各个列数据类型,长度,精度,排序规则等),是否有自增列,主键以及索引约束等信息。
2.SP_HELPTEXT
功能:显示用户定义规则的定义、默认值、未加密的 Transact-SQL 存储过程、用户定义 Transact-SQL 函数、触发器、计算列、CHECK 约束、视图或系统对象(如系统存储过程)。
使用示例:(其中SPC_01为数据库中的用户定义存储过程)
通过这个系统SP,我们可以查看对应存储过程(函数、触发器、计算列、约束、视图等系统对象)对应的定义语句。(注意,前提是未加密)