2016-07-07 45 views
0

我需要爲兩個登錄提供對特定數據庫的訪問,但我無法找到正確的查詢,以下是不正確的查詢,如果有人可以幫助我正確的將有幫助SQL Query爲多個登錄提供數據庫授權

ALTER AUTHORIZATION ON DATABASE::<DBName> TO {[USER1] AND [USER2]} ; 
+0

您可以使用計數不會。的登錄和限制在您的程序中小於或等於最大登錄限制 –

回答

1

我不知道你工作的是哪個數據庫。我一直在爲DB SQL Azure做類似的工作。首先,你需要在SQL服務器級別創建一個登錄名和用戶:

EXEC sp_addrolemember 'dbmanager', 'someLogin';

CREATE LOGIN someLogin WITH password='<Password>';
CREATE USER someUserName FROM LOGIN someLogin ;
GO

其次在SQL服務器級別角色分配給用戶 EXEC sp_addrolemember 'loginmanager', 'someLogin ';
GO

之後,你需要創建一個數據庫和用戶對於它:

CREATE DATABASE SomeDB;
GO

最後,你可以在數據庫級別創建一些用戶併爲其指定roles.For這個目的,你需要在數據庫中的上面創建的上下文中運行的查詢:
CREATE USER [someDBUserName] FOR LOGIN [someLogin];
GO

如果有必要,你可以將角色分配此用戶:

EXEC sp_addrolemember 'db_datareader', 'someDBUserName';
GO

對於SQL Azure中以下數據庫級角色可供選擇:
db_owner, db_accessadmin, db_datareader, db_datawriter, db_ddladmin, db_securityadmin, db_backupoperator, db_denydatareader, db_denydatawriter.

+0

感謝您的快速回復。 我正在使用sql server 2008 R2,並且我已經創建了兩個syslogins,現在我只想將這兩個syslogins作爲特定數據庫的dbowner – Abhaya

相關問題