暂无图片
数据库作业执行如何使用当前用户执行
我来答
分享
Edward
2023-05-18
数据库作业执行如何使用当前用户执行

1、编写一个批量更新表统计的存储过程,由于是一个数据库中有多个用户,因此使用了通用的名字

2、在数据库的任务中建立作业执行
image.png
3、执行结果提示错误,但是发现是执行的时候都是通过sys用户执行,导致无法找到当前用户的表。
image.png
但是查询作业,作业的所有值是YELEI用户
image.png
各位老师,我应该如何改动才能正常以当前用户执行作业中的任务

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
Edward

不使用user来获取当前的用户,使用v_current_user:=sys_context('USERENV','CURRENT_USER'); 这种方式获取当前用户给一个变量

dbms_stats.gather_table_stats(v_current_user,t_tablename, estimate_percent => 100,cascade=>TRUE, method_opt => 'FOR ALL COLUMNS SIZE AUTO',degree =>10);

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏