我创建了一个用户ANALYST_USER并授予了一个角色分析人员。
当我试图在TEST_DB中创建一个表时,我收到了以下错误消息:无法创建表测试。SQL访问控制错误:不足以对模式“PUBLIC”进行操作

下面是我在尝试使用ANALYST_USER帐户创建表之前编写的语句。
使用角色SECURITYADMIN;
-创建角色--创建角色分析师
-数据库--授予角色分析员对数据库TEST_DB的使用;
-模式--将数据库TEST_DB中所有模式的使用情况授予角色分析人员;将数据库TEST_DB中未来模式的使用情况授予角色分析人员;
-仓库--将仓库TEST_WH的使用授予角色分析人员,将仓库TEST_WH的使用授予角色分析人员;
-表/视图
-用户-授予用户ANALYST_USER角色分析员;
有人知道如何解决这个问题吗?
发布于 2022-09-02 17:55:19
这是因为角色缺少公共模式上的create权限。您只是拥有模式授予中的使用权限和监视权限。因此,将模式TEST_DB.PUBLIC上的表授予角色分析人员;可以解决您的问题。
发布于 2022-02-25 16:41:36
下面的声明解决了这个问题。将数据库TEST_DB中的所有模式授予角色分析人员;将数据库TEST_DB中的所有未来模式授予角色分析人员;
我理解这给出了“所有”权限,所以如果我们只想授予"create“权限,那么我们需要使用以下语句:
将数据库TEST_DB中的模式表授予角色分析人员;
https://stackoverflow.com/questions/71267611
复制相似问题