好的,所以我有一个数据库、一个登录名和一个分配给登录名的数据库用户。要授予该用户 db_datareader 和 db_datawriter 访问数据库的权限,我会这样做:
USE [mydatabase];
EXEC sp_addrolemember db_datareader, [myuser];
EXEC sp_addrolemember db_datawriter, [myuser];
但是,如果我正确阅读了文档sp_addrolemember
,则不鼓励使用:
此功能将在 Microsoft SQL Server 的未来版本中删除。避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。请改用 ALTER ROLE。
那么如何使用 ALTER ROLE 来做到这一点?当我这样做时:
ALTER ROLE sys.database_role_members.db_datareader ADD MEMBER [myuser];
我收到此错误:
ADD MEMBER 附近的语法不正确