Sql server SQL Server:找出哪些用户对哪些表具有写访问权限?

Sql server SQL Server:找出哪些用户对哪些表具有写访问权限?,sql-server,database-permissions,Sql Server,Database Permissions,在SQLServer7.0中,我需要找出哪些用户对特定数据库中的哪些表具有写访问权限 我知道我可以在EnterpriseManager中通过查看数据库中的每个表并查看授予这些表的访问权限来做到这一点,但是数据库中有几百个表。因为我只关心少数用户,所以我宁愿从用户的角度来看待它 我是否可以在系统表上运行查询来实现这一点?是否有其他通过Enterprise Manager的方法 我所追求的基本上是这样的: UserOne has write access to Table1, Table2 and

在SQLServer7.0中,我需要找出哪些用户对特定数据库中的哪些表具有写访问权限

我知道我可以在EnterpriseManager中通过查看数据库中的每个表并查看授予这些表的访问权限来做到这一点,但是数据库中有几百个表。因为我只关心少数用户,所以我宁愿从用户的角度来看待它

我是否可以在系统表上运行查询来实现这一点?是否有其他通过Enterprise Manager的方法

我所追求的基本上是这样的:

UserOne has write access to Table1, Table2 and Table3
UserTwo has write access to Table2 and Table3
etc.
魔法27由1(选择)+2(更新)+8(插入)+16(删除)构建而成

感谢马特·莱西(和谷歌!)让我走上了正确的道路:

SELECT u.name, o.name
FROM syspermissions p, sysobjects o, sysusers u
WHERE p.id = o.id
AND u.uid = p.grantee
AND u.name IN ('UserOne', 'UserTwo', 'UserThree')
AND o.xtype = 'U'
AND p.actadd = 27