数据库功能仅以读取权限执行

时间:2018-10-22 16:55:38

标签: oracle

我仅具有对刚刚从中读取的旧系统数据库的读取权限,并且我具有要调整的庞大的“视图查询”。现在,在视图查询中,有一些我没有权限的函数调用。我的第一个问题是,如果我请求执行这些功能的许可,并且这些功能具有更新或删除命令,它们将被执行吗?

第二个问题,如果在执行函数期间创建了一个临时表,我将能够毫无问题地执行该函数吗?换句话说,函数可以在我的用户调用时创建并填充临时表吗?

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

通常,如果您正在执行一个调用函数的SELECT查询,那么在不提高ORA-14551: cannot perform a DML operation inside a query的情况下它无法执行INSERT / UPDATE / DELETE。有多种方法可以解决该问题(例如使用自主交易),但是这种方法并不常见。如果您是我,我会亲自检查这些功能,以确保它们没有任何插入或更新。

我不知道您的意思是“如果通过这些功能完成了临时创建”,那么我无法回答您的第二个问题。如果您用更多详细信息更新问题,我将编辑此答案。