日期:2014-05-19  浏览次数:20578 次

在sql中添加一个用户,只能访问指定数据库中的指定的表,添加用户的步骤是怎样的?
在sql中添加一个用户,只能访问指定数据库中的指定的表,添加用户的步骤是怎样的?

------解决方案--------------------
--创建角色
EXEC sp_addrole @RoleName
--授予数据库中所有用户表查询权限给某一个角色
declare @UserTablename varchar(20)
Declare Cur Cursor For
select Name from sysobjects where xtype= 'u ' and status> =0
declare @SQL Varchar(200)
Open Cur
Fetch Cur Into @UserTablename
While @@FETCH_STATUS=0
BEGIN
Set @sql= 'GRANT SELECT ON '+@UserTablename+ ' TO '+@RoleName+ ' '
Exec(@sql)
Fetch Cur Into @UserTablename
End
Close Cur
Deallocate cur
--添加登录,设置密码,默认数据库
EXEC sp_addlogin @LoginUserName,@LoginUserPwd,@DbName
--为登录在数据库中添加安全账户
EXEC sp_grantdbaccess @LoginUserName,@SafeAccount
--添加安全帐户为角色的成员
EXEC sp_addrolemember @RoleName,@SafeAccount