我在一个人负责创建和维护SQL服务器的所有存储过程的位置工作,并且是软件开发人员和数据库之间的管道。有很多存储过程,并且使用数据库图表,它很容易在90%的时间内找出存储过程需要的参数/返回作为输出。然而,对于其他10%的时间,有一个参考是有帮助的。由于DBA是一个忙碌的人(不是我们所有人?),最好有一些程序将存储过程记录到文件中,以便开发人员可以看到它而无法自己访问SP。
问题是,有没有人知道要实现这个目标的好方案?基本上我们需要的东西是提供SP的名称,参数列表和输出,两者都有数据类型和可以为空的标志。
答案 0 :(得分:2)
information_schema视图将包含该信息。你需要“例程”和“参数”
http://msdn.microsoft.com/en-us/library/aa933204(v=SQL.80).aspx
这些视图在SQL2000 / SQL2005 / SQL2008
上可用您提到开发人员可能无权访问SP。您可能希望将架构(包括SP)编写到文件脚本,以便开发人员可以安装它的副本。存储过程签名很不错,但除非您在存储过程后面有源代码,否则您无法看到这些参数的完成情况。
答案 1 :(得分:0)
我认为你可以自己编写这种实用程序。只需连接到数据库,获取所有存储过程的列表,然后按照您喜欢的任何格式记录它们的参数。
看看这个问题,了解如何:
Get a Parameter List from an SQLDataSource given Stored Procedure Name
答案 2 :(得分:0)
SHOW PROCEDURE CODE proc_name
这是一个控制台命令 - 原型 - 但它能做你想要的吗?