Sql-Server
如何檢查我的使用者是否具有 CREATE SCHEMA 權限?
我在數據庫中有一個可以創建表和儲存過程的使用者帳戶。
我想確認此使用者帳戶是否可以創建模式 -無需先嘗試。(我是金融部門而不是 IT 部門的一員。)
如果我可以創建模式,那麼我會請求 IT 部門允許繼續這樣做。
如果我*不能,*那麼我將繼續等待 IT 部門根據我前段時間提出的服務台請求來執行此操作(嘆氣)。
是否有可以在 SSMS 中執行的命令來告訴我這一點而無需實際創建新架構?
我還截取了該使用者權限的幾個螢幕截圖 - 也許他們會有答案?
編輯:
執行下面 SQLServing 建議的 SQL 後,我得到以下結果:
UserName is_disabled principal_type_desc class_desc object_name permission_name permission_state_desc DWReports 0 SQL_USER DATABASE NULL CONNECT GRANT DWReports 0 SQL_USER OBJECT_OR_COLUMN GetSystemSQLAgentJobList EXECUTE GRANT
在我看來,我將無法創建此架構,對嗎?
不,這是錯誤的。您可以在數據庫中創建您想要的所有內容,因為您是
db_owner
. 您可以在查看您的第一張會員照片時看到它。上面答案中的錯誤是它只考慮為給定使用者顯式授予權限。但是使用者可能是 1000 個角色的成員,並且可以將權限授予這些角色。
在您的情況下,您是
db_owner
可以控制數據庫的固定數據庫角色的成員,因此您可以在數據庫中執行任何操作。要查看您在數據庫中的有效權限,請執行以下操作:
select * from sys.fn_my_permissions(null, 'database');