sqlserver2008 r2如何设置权限只能访问指定表中指定行

现在已经实现了对指定表的权限访问,对表中指定行不知道怎么设置,比如只能访问name=1的行数据

grant/revoke select on 表名 where name =1 to 用户名;

操作步骤

  1. 首先进入数据库级别的【安全性】-【登录名】-【新建登录名】

(图1:新建登录名)

  1. 在【常规】选项卡中,如下图所示,创建登陆名,并设置默认的数据库

(图2:设置选项)

  1. 在【用户映射】选项卡中,如下图所示,勾选需要设置的数据库,并设置【架构】,点击【确认】按钮,完成创建用户的操作

(图3:选择对应数据库)

  1. 现在我们就可以对TestLog数据库中的User表进行权限的设置了,【表】-【 属性】

(图4:选择对应表)

  1. 在【权限】选项卡中,如下图所示,依此点击【添加】-【浏览】-【选择对象】

(图5:设置访问表的用户)

  1. 在上面点击【确认】后,我们就可以下面的列表中找到对应的权限,如果你还想细化到列的权限的话,右下角还有一个【列权限】的按钮可以进行设置,点击【确认】按钮就完成了这些权限的设置了

(图6:权限列表)

  1. 现在就使用TestUser用户登陆数据库了,登陆后如下图所示,现在只能看到一个表了