PL/SQL程序块管理
????? PL/SQL作为SQL语言的扩展,提高了Oracle处理数据的能力,使得原本需要在中间层完成的业务逻辑可以直接在数据库中实现,增强了程序的可移植性和可维护性,这里说说PL/SQL程序的管理。
?
????? PL/SQL程序单元作为数据库的对象保存在数据库中,当源码编译后生成P CODE,用户调用程序块时直接调用相应的P CODE来实现相应的功能。而程序单元是以源码的形式保存的,这里通过数据字典来查看程序单元:
?
?????? 1. 确定数据库对象 user_objects
?????????
????????? SQL> col OBJECT_NAME format a30?? ------格式化较长的列
????????? SQL>?select object_name,object_type,status from user_objects;
??????
? 这里将列出所有对象的信息,其中status列能查看当前对象是否可用,当程序块为invalid时,说明程序块当前不可用,一般可以通过查看程序块的对象依赖关系来发现程序块无效的原因,然后重新编译程序块
?
? SQL> alter procedure XXXX? compile;
?
2. 查看程序块源码 user_source
???通过第一步确定了想要查看源码的对象名称:TEST
?
? SQL> set heading off
? SQL> select text from user_source where name='TEST';
?
? 此时TEST程序块的源码尽收眼底!
?
?