我刚刚部署了一个新的存储过程到我们的测试环境,只是为了让它在执行时失败,因为测试系统没有包含存储过程依赖的表。我相信这是由于deferred name resolution。是否有解决SQL Server延迟名称解析的方法?
事情是,我觉得有时在过去,我试图创建存储过程,由于缺少依赖关系而失败。但我可能是错的。
无论如何,是否有可能以某种方式强制名称解析创建一个存储过程?如果是这样,是否有任何方法使sqlcmd和SSMS一起工作?
通过这种方式,我们可以了解脚本的首次执行时缺少的依赖性。
在附注上,我有兴趣阅读关于延迟分辨率如何工作的明显deviation from the MSDN doco。
编辑:我们混合了2005/2008(不受我控制),所以我需要一个2005解决方案来处理这两个实例。
您可以在投票[连接问题(http://connect.microsoft.com/SQL /feedback/ViewFeedback.aspx?FeedbackID=127152),但似乎没有太多的动作(除了upvotes),并没有列出的解决方法。 –
请说明SQL Server版本 –
在最后一段中,我不确定人们在阅读和理解整个MSDN文档。它没有说它会在启动前发生错误,它说:“如果执行存储过程时由存储过程引用的对象丢失,则存储过程**在到达引用缺失对象的语句时停止执行**“(我的重点) –