2010-11-19 3 views
1

현재 에 연결된 데이터베이스 사용자에게 새 데이터베이스를 만들 수있는 권한이 있는지 확인하고 싶습니다. SQL을 사용하여이를 달성하고자합니다. 때문에 MSDN 페이지에서 Create Database documentation에 나열된 권한을SQL Server 2008 : 새 데이터베이스를 만들 수있는 권한을 확인하는 방법?

WITH perms AS 
(SELECT DISTINCT permission_name AS perm 
FROM [sys].[server_permissions] 
WHERE permission_name IN 
('CONTROL SERVER', 'ALTER ANY DATABASE', 'CREATE ANY DATABASE') 
UNION 
SELECT DISTINCT permission_name 
FROM [sys].[database_permissions] 
WHERE permission_name IN 
('CREATE DATABASE', 'ALTER DATABASE') 
) 
SELECT COUNT(perm) AS Permissions FROM perms 

:

나는이 시도. 하지만 dbcreator 역할에 사용자가 있고 그 사용자에 대해 사용 권한이 나열되어 있지 않으므로 작동하지 않습니다.

그래서 신뢰할 수있는 SQL을 사용하여 필요한 권한을 결정하는 방법이 필요합니다. 너 나 좀 도와 줄 수있어?

답변

1

쿼리 대신 시도해 보셨습니까?

select * from sys.fn_my_permissions('','') 
+0

감사합니다. 그게 다예요 :) –

관련 문제