You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PL/SQL中使用AUTHID CURRENT_USER的存储过程,调用者无对应表时的执行问题

问题解答

当用户1创建带有AUTHID CURRENT_USER的PL/SQL存储过程时,这个存储过程会以**调用者的身份(即用户2)**执行,具体逻辑如下:

  • 存储过程执行时,对象解析(比如查找表t1)会基于调用者(用户2)的schema。
  • 如果用户2的schema中不存在表t1,执行存储过程时会直接触发ORA-00942: 表或视图不存在的错误,不会去访问用户1的t1表。

简单来说,AUTHID CURRENT_USER指定的是调用者权限模式,存储过程的执行上下文完全属于调用用户,不会默认使用定义者(用户1)的对象。

内容的提问来源于stack exchange,提问作者Aswin8109

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 09:07:01