USE [BBTC_Test] GO GRANT INSERT, UPDATE, DELETE ON [schema_name].[db_owner] TO lichao 消息 15151,级别 16,状态 1,第 3 行 Cannot find the object 'db_owner', because it does not exist or you do not have permission.
时间: 2024-03-09 11:50:33 浏览: 157
在授权语句中,`db_owner` 应该是视图的名称,而不是模式名称。如果你的视图名称是 `db_owner`,并且该视图确实存在于指定的模式中,你可以使用以下 SQL 语句授权用户 `lichao` 对该视图的 INSERT、UPDATE、DELETE 操作权限:
```
USE [BBTC_Test]
GO
GRANT INSERT, UPDATE, DELETE ON [schema_name].[db_owner] TO [lichao];
```
其中,`schema_name` 是视图所在的模式名称,`db_owner` 是你想要授权的视图名称,`lichao` 是你想要授权的用户名。
请注意,如果你的视图名称不是 `db_owner`,你需要将授权语句中的视图名称替换为你的视图名称。此外,你需要确保用户 `lichao` 具有访问该视图所依赖的表的相应权限。
相关问题
USE [BBTC_Test] GO GRANT INSERT, UPDATE, DELETE ON [db_owner].[view_name] TO lichao
在 SQL Server 中,`db_owner`是数据库中的一种固定数据库角色,其成员具有该数据库中所有对象的完全控制权限。因此,你不需要对 `db_owner` 授权。
如果你想将用户 `lichao` 添加到 `db_owner` 角色中,可以使用以下 SQL 语句:
```
USE [BBTC_Test]
GO
EXEC sp_addrolemember N'db_owner', N'lichao';
```
这将把用户 `lichao` 添加为 `BBTC_Test` 数据库的 `db_owner` 角色成员,该用户将具有该数据库中所有对象的完全控制权限,包括视图。
如果你想授予用户 `lichao` 对特定`db_owner` 角色中的视图的 INSERT、UPDATE、DELETE 操作权限,你可以使用以下 SQL 语句:
```
USE [BBTC_Test]
GO
GRANT INSERT, UPDATE, DELETE ON [schema_name].[view_name] TO [lichao];
```
其中,`schema_name` 是视图所在的模式名称,`view_name` 是你想要授权的视图名称,`lichao` 是你想要授权的用户名。请确保你已经将 `lichao` 用户添加为 `db_owner` 角色成员,或者在授权语句中使用 `db_owner` 替代 `schema_name`。
USE BBTC_Test; GRANT SELECT, INSERT, UPDATE, DELETE, VIEW DEFINITION TO lichao; 撤销此条命令权限
您可以使用以下命令撤销之前授予 lichao 用户的 BBTC_Test 库的权限:
```
USE BBTC_Test;
REVOKE SELECT, INSERT, UPDATE, DELETE, VIEW DEFINITION FROM lichao;
```
这将从 lichao 用户中撤销 BBTC_Test 库的所有权限,包括增删改查和视图定义权限。请注意,如果您只想撤销其中的一些权限,则可以使用相同的语法,只是将需要撤销的权限从 `REVOKE` 命令中删除即可。
阅读全文