我試圖找到一條 SQL 陳述句來獲得對表連接的所有資料庫角色的概述。所以我正在尋找 和 之間的 n:msys.tables連接sys.database_principals where type_desc='DATABASE_ROLE'。
目標是概述哪些角色在哪些表上。任何人都可以幫忙嗎?
我正在使用 Microsoft SQL Server 2019。
親切的問候
uj5u.com熱心網友回復:
sys.database_permissions就是你要找的。您可以加入sys.tables并sys.database_principals獲取您需要的所有資訊
SELECT
schema_name = s.name,
t.name,
per.permission_name,
prin.name,
prin.state_desc
FROM sys.tables t
JOIN sys.schemas s ON s.schema_id = t.schema_id
JOIN sys.database_permissions ON per.major_id = t.object_id
AND per.class = 1 -- object or column
AND per.minor_id = 0 -- table only, not column
JOIN sys.database_principals prin ON prin.principal_id = per.grantee_principal_id
AND prin.type = 'R'; -- same as DATABASE_ROLE
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/415828.html
標籤:
上一篇:在將nvarchar轉換為日期時從字串轉換日期和/或時間時轉換失敗
下一篇:SSIS自定義列屬性
