原文地址:开发者导航 · 你想要的,我全都有!

oracle中truncate其他用户的表必须要有drop any table权限,如果没有此权限,可以采用下面的方法:

一、ins用户下创建存储过程

create or replace procedure p_trun_link_odso is
       sqlstr varchar2(2000);
begin
  sqlstr := 'truncate table ins.tb_cablecheck_link_odso';
  execute immediate sqlstr;
  commit;
end;

二、mobapp用户下赋权:执行存储过程的权限

grant execute on ins.p_trun_link_odso  to odso_insert;

三、odso_insert用户下执行存储过程,即可truncate表

begin
  -- Call the procedure
  ins.p_trun_link_odso;
end;

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐