我有一系列的存储过程,用于从数据库中选择数据。我有一个角色(cctc_reader),其被授予对这些存储过程的执行权限。其中一个存储过程调用另一个名为
问题在于,在这个存储过程中,查询语句
- 每个选择存储过程 -
如果我向cctc_reader授予db_datareader,则查询很好,但我不想向所有表授予读取权限(这就是为什么我使用存储过程的原因)。我尝试了在Master db中授予Information_schema的Select权限,但仍然无法使其正常工作。
有什么建议吗?
recControl_system_option
的存储过程,后者查询Information_schema.columns
。问题在于,在这个存储过程中,查询语句
select column_name from information_schema.columns where table_name = 'recControl_manager'
没有返回任何记录。cctc_reader已被授予以下权限:- 每个选择存储过程 -
recControl_system_option
理论上应该可以工作。在dbo下运行时,我没有任何问题。如果我向cctc_reader授予db_datareader,则查询很好,但我不想向所有表授予读取权限(这就是为什么我使用存储过程的原因)。我尝试了在Master db中授予Information_schema的Select权限,但仍然无法使其正常工作。
有什么建议吗?