在我的一个数据库中,当我想要在可编程性下查看用户创建的存储过程列表时 - >存储过程,它弹出以下错误。
"当前命令发生严重错误。结果(如果有的话)应该被丢弃。"
我可以在系统存储过程下查看系统存储过程。
我对此数据库进行了备份并恢复到另一台服务器。恢复的数据库也有同样的问题。
存储过程显示在sys.Procedures中,sp_helptext也检索过程结构。
任何帮助都将受到高度赞赏
N.B:同一服务器中还有其他50个数据库,这些数据库没有问题。这些程序在存储过程
下正确列出答案 0 :(得分:0)
在打开程序列表之前运行探查器。下一个打开的过程列表并调查分析器中的最后一个查询。
答案 1 :(得分:0)
最后,我发现了造成这个问题的原因。过去,数据库中存在的一个程序已被删除。不幸的是,由于某种原因,程序的痕迹仍然存在于某些系统表中,如Sys.Objects。
每当我扩展存储过程时,SSMS也会尝试提取此过程的详细信息,该过程已被删除(在Sys.Procedures中不再存在)。
这会导致错误弹出。
从我几个月的研究中我理解的是在SQL Server的更高版本中,用户将无法访问修改系统表,如sys.objects。所以没有解决这个问题的方法