SQL Server 行权限

作者:vkvi 来源:ITPOW(原创) 日期:2012-3-31

首先来说,SQL Server 中有列权限,但没有行权限,要限制用户的行选择,只能曲中求。

这也是微软给出的解决办法:不同的使用者使用各自的登录名。

请先阅读 SQL Server 中 system_user、current_user、user_name([id]) 有什么区别?

  • 在数据库中每一个行记录增加一个列(假设名称为 SystemUser),并记录该行所属登录用户,比如 cftea。
  • 然后建立一个视图,这个视图中的 where 必须有一项为 SystemUser=system_user。
  • 然后使用 cftea 这个登录名进行数据库连接,并选择这个视图,由于 system_user 是当前登录名,那么就相当于限定了 cftea 的记录。

虽然这是一种不是很灵活的方法,但毕竟还是种办法。

相关文章