2010-07-07 16 views

cevap

11

yaklaşık db_datareaderdb_datareader rolü

örnek

exec sp_addrolemember 'db_datareader',YourLogin 

Bilgi kullanıcıyı ekleyin: Sadece her db_datareader veritabanı rolü kullanıcı eklemek mümkün olmalıdır http://msdn.microsoft.com/en-us/library/ms188629(SQL.90).aspx

+3

Bu, tüm veritabanlarına değil, tek bir veritabanına salt okunur erişim sağlar. Her veritabanı için bunu yapmak zorunda kalacaksınız. –

0

veritabanları. Veritabanlarında dolaşmak için bir betik yazabilir ve sizin için yapabilirsiniz.

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 

userPeter görüntülenen yerde kullanıcı adınızı yazmanız gerekir.

İlgili konular