往其他用户写入select出来的数据别忘记grant授权

简介:

往其他用户写入数据别忘记授权:
事件,应用提出需求要往其他用户写数据,由于在同一个库,没必要启用DBLINK,而直接在表名前面加上要插入用户的用户名。
   Insert Into TMP_ADC_ENTRY_CONTAINER (DATA_IMPORT_TIME, ENTRY_ID, CONTAINER_ID) 
       Select to_char(end_time, 'yyyymmddHH24mi'), ENTRY_ID, CONTAINER_ID From ADC_ENTRY_CONTAINER;

却一直报Error: PL/SQL: ORA-01031: insufficient privileges错误
Compilation errors for PROCEDURE ADC.PROC_EXPORT_CONTAINERS

Error: PL/SQL: ORA-01031: insufficient privileges
Line: 151


而单独测试
   Insert Into TMP_ADC_ENTRY_CONTAINER (DATA_IMPORT_TIME, ENTRY_ID, CONTAINER_ID) values(sysdate,'1','2')却正常,
百思不得其解,最后想象是否是访问远程表的权限有问题,尝试如下授权:

sys用户下grant select,insert on EPORT.TMP_ADC_ENTRY_CONTAINER to ADC;

授权后执行改语句成功



本文转自zylhsy 51CTO博客,原文链接:http://blog.51cto.com/yunlongzheng/531989,如需转载请自行联系原作者

相关文章
|
6月前
|
存储 关系型数据库 MySQL
给用户赋予权限GRANT语句
【6月更文挑战第20天】给用户赋予权限GRANT语句。
117 1
|
7月前
|
安全 关系型数据库 数据库
postgresql|数据库|角色(用户)管理工作---授权和去权以及usage和select两种权限的区别
postgresql|数据库|角色(用户)管理工作---授权和去权以及usage和select两种权限的区别
358 0
|
SQL 关系型数据库 Shell
postgres的用户和角色
为了引导数据库系统,一个刚刚被初始化好的系统总是包含一个预定义角色。
|
关系型数据库 MySQL 数据库
|
关系型数据库 数据库 数据安全/隐私保护
PG 用户(角色)操作
用户(角色)操作
142 0
|
数据安全/隐私保护 关系型数据库 Oracle