1

我从未在 SQL Server 中使用过用户/登录名,并且很难掌握它。

我目前以管理员身份登录,这将我设置为“dbo”数据库用户。

有一个特定的表我想阻止更新。我尝试通过更改权限

DENY UPDATE on SCHEMA::table TO dbo

但显然你不能弄乱 dbo 用户的权限。

所以我创建了一个新用户myuser并切换,setuser myuser但该用户似乎没有权限从表中进行选择。

我应该如何向该用户授予“除了更新特定表之外的所有内容”权限?

4

1 回答 1

3

要授予“除更新特定表之外的所有内容”权限,您可以执行

EXEC sp_addrolemember N'db_datareader', N'myuser'

EXEC sp_addrolemember N'db_datawriter', N'myuser'

DENY UPDATE ON dbo.YourTable TO myuser

来自 BOL

db_datawriter 固定数据库角色的成员可以添加、删除或更改所有用户表中的数据。

db_datareader 固定数据库角色的成员可以从所有用户表中读取所有数据。

于 2013-08-01T20:25:10.463 回答