在SQL Server 2008中,有时我可以查询sys.objects
并获取有关数据库中任何存储过程的信息。在其他时候,它不起作用。刚才,我尝试了这个问题:
SELECT TOP 1000 name FROM sys.objects
...仅获得了6条记录:spt_fallback_db
,spt_fallback_dev
,spt_fallback_usg
,spt_monitor
,spt_values
和DF__spt_value__statu__4460231C
。
这是在具有10,000个以上存储过程的数据库上。是什么给了什么?
答案 0 :(得分:1)
您希望确保您的登录信息设置为VIEW DEFINITION
。如:
GRANT VIEW DEFINITION TO MyUser
当然您也可以通过SSMS设置权限。