首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ORA-01031:插入权限不足

ORA-01031:插入权限不足
EN

Stack Overflow用户
提问于 2016-01-12 06:46:48
回答 2查看 11.9K关注 0票数 0

E one列的数据类型从NUMBER(4)更改为VARCHAR2(4)。DBA执行现有值的转换。

现在,当我们尝试使用proc *c代码将记录插入到表中时,它给出了错误"ORA-01031:权限不足“。

我们可以从SQLPLUS中插入记录。过了一段时间,问题就消失了。一旦DBA重新构建了表,问题就消失了。

每次我们用新的更改刷新测试环境之后,就会发生这个问题。

EN

回答 2

Stack Overflow用户

发布于 2017-07-24 00:37:05

运行以下代码行:

代码语言:javascript
复制
grant insert on [table] to [user]

[table]更改为您的表名,并将[user]更改为您的用户。

票数 5
EN

Stack Overflow用户

发布于 2016-01-12 06:57:57

有一些可能性。

通过运行以下SQL命令,仔细检查您的表权限:

代码语言:javascript
复制
SELECT *
  FROM dba_tab_privs tp
 WHERE tp.owner = '<YOUR_OWNER>'
       AND tp.table_name = '<YOUR_TABLE_NAME>';

如果您的权限是通过角色授予的,请检查上面的被授权者(在下面的查询中)是否显示了属性"DEFAULT_ROLE“= YES,以确保启用了该角色。

代码语言:javascript
复制
SELECT * FROM dba_role_privs rp WHERE rp.grantee = '<USER_RUNNING_THE_INSERT>';

如果不是,并且假定您的DBA和应用程序设计没有安全问题,您可以通过运行以下命令来启用它:

代码语言:javascript
复制
alter user <YOUR_USER_RUNNING_THE_INSERT> default role all;

此外,如果您正在重新创建表,请确保每次删除它并重新创建时,都会相应地运行您的授权。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34732548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档