【发布时间】:2018-09-15 11:49:16
【问题描述】:
在我的存储过程中,我总是有一个注释行来测试我的存储过程:
/*
EXEC [schema].[uspNameOfSP]
*/
我想稍微简化一下,这样我就可以将它复制粘贴到其他存储过程中,而不必每次都更改名称。我想做这样的事情:
/*
EXEC @thisStoredProceduresName
*/
这样的事情可能吗?
【问题讨论】:
-
提示:使用适当的软件(MySQL、Oracle、DB2 等)和版本标记数据库问题很有帮助,例如
sql-server-2014。语法和功能的差异通常会影响答案。请注意,tsql缩小了选择范围,但没有指定数据库。 -
@MatSnow 这不会真正起作用,我不同意它是重复的。 OP 希望名称自动出现在静态存储过程的主体中,而不是在执行过程时输出。
-
@noClue 那么您的需求是否发生了变化,现在您也需要参数列表吗?如果您只需要所有过程及其参数的列表,您可以随时通过查询
sys.objects和sys.parameters轻松得出此信息,甚至可以从中构建示例调用 - 这都在元数据中,您不需要必须手动记录您创建的所有内容。 -
Ummm....名称和所有参数不是很明显吗?它就在“创建程序”之后。奇怪的是,所有参数都在那之后。在程序正文中添加评论有什么好处?所有信息都在那里。
-
@SeanLange 我已经担心它不存在,我只是想确保我没有错过任何东西。 Stackoverflow 在这一点上只是一种保证。
标签: sql-server sql-server-2008 tsql ssms