如何在oracle中恢复丢失的包

How to restaure a dropped package in oracle

我已经(不由自主地)丢弃了我项目的一个重要包,我现在想恢复它。你能帮帮我吗?

这是我尝试做的事情:

RESTAURE PACKAGE package_name;

我与 oracle sql 开发人员一起工作

没有restore package命令。如果您丢失了包,您可能需要从您的源代码控制系统取回它。

如果足够幸运,您或许可以运行 闪回查询以查看源代码。假设您在不到 20 分钟前将其删除(否则请调整您要闪回的时间戳)

select type, line, text
  from all_source as of timestamp systimestamp - interval '20' minute
 where owner = <<schema owner>>
   and name = <<name of package>>
   and type in ('PACKAGE', 'PACKAGE BODY')
 order by type, line;

Oracle 在有限的时间内保留执行闪回查询所需的 undo 数据。如果您放弃包的时间太长,Oracle 可能无法向您展示代码的样子。