sql - 检查存储过程是否有效

标签 sql stored-procedures

我有一个语法正确的存储过程 (sproc A)。因此,当我在其创建或更改语句上点击“运行”时,它会保存到数据库中。

但是,sproc A 调用了另一个存储过程 (sproc B)。它没有为存储过程 B 提供足够的参数,所以我看不出它是一个有效的存储过程。

我想检测我的数据库中没有将足够的参数传递给它们自己的存储过程的所有存储过程。

谢谢你, 菲德尔

最佳答案

不幸的是,SQL Server 中没有测试依赖关系、参数等的机制

你必须 search+check ,或提供参数的默认值。否则,您只能通过测试来获取它。

一个很好的自动完成工具,比如 Red Gate SQL prompt可以为你列出参数+类型

注意:

这是一个长期存在的问题,甚至有 a request to MS包括这个。 SP参数检查是OPTION STRICT之一建议

关于sql - 检查存储过程是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6358336/

相关文章:

php - 清理用户密码

mysql - 价格,以 VARCHAR 格式转换为 DECIMAL 格式

c# - MySQL 存储过程和 C# 数据读取器列错误值

stored-procedures - 网络矩阵和存储过程

sql - 返回 SQL Server 中的最大日期

mysql - 使用 "group by"带条件和 "group by"计算的计数记录总和

sql - 每行 Postgresql 函数

c# - 我希望数据库表中具有 NULL 的列将其设为空白

c# - Sql Injection - 以下内容是否容易受到攻击?

mysql - 如何在 mysql 过程中读取字典数据