我想获得Oracle数据库中所有函数的列表,以及它们各自的修改日期.有没有可以为我提供此信息的SQL查询?
我try 使用以下查询:
SELECT * FROM DBA_OBJECTS
WHERE OBJECT_TYPE = 'FUNCTION'
这是我在Donald Burleson的一篇文章中找到的,但我收到了一条错误消息,指出:
ORA-00942:表或视图不存在.
我想获得Oracle数据库中所有函数的列表,以及它们各自的修改日期.有没有可以为我提供此信息的SQL查询?
我try 使用以下查询:
SELECT * FROM DBA_OBJECTS
WHERE OBJECT_TYPE = 'FUNCTION'
这是我在Donald Burleson的一篇文章中找到的,但我收到了一条错误消息,指出:
ORA-00942:表或视图不存在.
如果您无法访问DBA_OBJECTS
视图,很可能是因为缺少DBA授予的必要权限,因为该视图包含整个数据库的所有对象的元数据.
但是,您可以改为使用ALL_OBJECTS
视图,该视图仅包含您的用户有权访问的对象的元数据.因此,如果您能够访问该视图,则可以使用它的LAST_DDL_TIME
列,该列提供了由DDL语句(包括授权和撤销)导致的每个对象的最后一次修改的时间戳.
话虽如此,您的查询应该更新如下:
SELECT OBJECT_NAME, LAST_DDL_TIME
FROM ALL_OBJECTS
WHERE OBJECT_TYPE = 'FUNCTION'
ORDER BY LAST_DDL_TIME DESC