我的本意是想建立一个用户,只对某个数据库A中的所有表可以select的。
本来想不用赋予datareader角色,把所有表的select权限赋予该用户,没想到需要一个一个设置,很麻烦,没有批量设置的办法(问题1:有没有批量把该数据库中所有表的select 权限赋予某用户?)
然后我就赋予了该用户datareader角色,但我使用 sql server 客户端(smss)登陆后,居然发现,该用户可以看到master和tempdb数据库,甚至master的存储过程都可以看到。但我不想让该用户看到,怎么办???
------解决方案--------------------
无论任何角色,只要能登录sqlserver,就可以看到master和tempdb,看到没关系啊,用不到就好了
------解决方案--------------------
exec sp_helprotect @username = 'user name'