2010-07-07 64 views

回答

0

你应该只能够将用户在每个加入到拥有db_datareader数据库角色数据库。你可以编写一个脚本来循环访问数据库并为你做。

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您必须编写您的用户名。

相关问题