25

我最好寻找一个 SQL 查询来完成此操作,但其他选项也可能有用。

4

4 回答 4

41
SELECT LAST_DDL_TIME, TIMESTAMP
FROM USER_OBJECTS
WHERE OBJECT_TYPE = 'PROCEDURE'
AND OBJECT_NAME = 'MY_PROC';

LAST_DDL_TIME是最后一次编译。 TIMESTAMP是最后一次更改。

即使在依赖项发生更改时过程没有更改,也可能需要重新编译过程。

于 2008-11-17T23:54:34.670 回答
0
SELECT name, create_date, modify_date 
FROM sys.procedures order by modify_date desc
于 2011-11-03T07:15:33.793 回答
0

以下查询将在 Oracle 中执行

 SELECT * FROM ALL_OBJECTS WHERE OBJECT_NAME = 'OBJ_NAME' ;
于 2011-11-15T04:39:37.333 回答
0

当我在谷歌上搜索查找特定日期后更改的 PLSQL 包时,我来到了这里,有点类似于上面的问题。使用上面的 WW.s 答案,我得到了这个查询以查找任何“最近”更改的对象:

选择 LAST_DDL_TIME、TIMESTAMP、OBJECT_NAME、object_type
FROM USER_OBJECTS
WHERE -- OBJECT_TYPE IN ('PROCEDURE', 'PACKAGE', 'PACKAGE BODY', 'VIEW', 'FUNCTION') 和
  时间戳 > '2019-02-20'
按时间戳顺序排序;
于 2020-04-17T14:31:15.317 回答