2010-07-07 5 views

Répondre

11

ajouter l'utilisateur au db_datareader rôle

exemple

exec sp_addrolemember 'db_datareader',YourLogin 

infos sur db_datareader: http://msdn.microsoft.com/en-us/library/ms188629(SQL.90).aspx

+3

Ceci donne un accès en lecture seule à une base de données unique, pas à toutes les bases de données. Vous devrez le faire pour chaque base de données. –

0

Vous devez simplement être en mesure d'ajouter les utilisateurs au rôle de base de données db_datareader dans chacun des bases de données. Vous pouvez écrire un script pour parcourir les bases de données et le faire pour vous.

1
DECLARE @dbname VARCHAR(50) 
DECLARE @statement NVARCHAR(max) 
DECLARE db_cursor CURSOR 

LOCAL FAST_FORWARD 
FOR SELECT name FROM MASTER.dbo.sysdatabases OPEN db_cursor 
    FETCH NEXT FROM db_cursor INTO @dbname 
WHILE @@FETCH_STATUS = 0 
BEGIN 
    /* This sentence will be executed to gran the privileges. */ 
    SELECT @statement = 'use ['[email protected]+']; '+'EXEC sp_addrolemember N''db_datareader'', N''userPeter'''; 
    EXEC sp_executesql @statement 
    FETCH NEXT FROM db_cursor INTO @dbname 
END 

Dans l'emplacement qui apparaissent userPeter vous devez écrire votre nom d'utilisateur.

Questions connexes