所以,我有这个问题: 使用以下查询来确定suzie和jimmy的principle_id值。
select *
from sys.database_principals
where name in ('suzie','jimmy')
使用从上面的查询中获得的principle_id值;使用。编写SELECT查询 sys.database_permissions表,列出已授予suzie和jimmy的所有权限。
我得到的校长身份是“5& 6”
然后我用了:
SELECT*
FROM sys.database_permissions
WHERE grantee_principal_id in ('5','6')
现在问题是我们现在要求您在查询中使用OBJECT_NAME功能来显示视图名称,而不仅仅是他们的 major_id值。我不太明白如何使用OBJECT_NAME功能,我一直在玩,无法得到它。任何提示或帮助将不胜感激。谢谢!
答案 0 :(得分:2)
你在找这样的东西吗?
grator_principal_id
将返回这些主要授予的所有对象,而grantee_Prinicipal_id
将返回授予Suzie和Jimmy 的所有对象 {{3 }}
SELECT *
,OBJECT_NAME(major_id) AS TheObject
FROM sys.database_permissions
WHERE grantor_principal_id in (select principal_id
from sys.database_principals
where name in ('suzie','jimmy'))