一、编辑存储过程
1、在右侧的包名上右键选择“edit”就可编辑
2、在顶部菜单中点击“tools”->“Export User Objects”,在弹出的界面中复选要编辑的package和package body选择导出的路径,把文件导出后进行编辑。然后在顶部菜单中选择“file”->“new”->“Command window”,然后在界面中输入@c:/1.sql(sql文件的全路径)。将编辑后的文件导入到数据库中。 

    二、使包可以调试
选中包,右键勾选add debug information即可

    三使用动态游标
type T_XMLREFCUR is REF CURSOR;
XNODE_CUR T_XMLREFCUR;

BEGIN
SQL_XNODE := 'SELECT '|| '''<'||IN_NODE_NAME ||' id="'''||'||'||IN_Q_ID_COLUMN||'||'||'''">'''||'||'||IN_Q_VALUE_COLUMN||'||'||'''</'||IN_NODE_NAME||'>'''||
' FROM '||IN_TABLE||
' WHERE LANGUAGE ='||IN_LANGUAGE;

OPEN XNODE_CUR FOR SQL_XNODE;
LOOP
FETCH XNODE_CUR
INTO V_TMP_XNODE;
EXIT WHEN XNODE_CUR%NOTFOUND;
V_OUT_XMLNODE := V_OUT_XMLNODE || V_TMP_XNODE||CHR(13)||CHR(10);
END LOOP;

    四、判断某张表中的某个字段是否存在
使用ORACLE的系统表来完成这项任务:
if exists ( select 1 from Dba_Tab_Columns where table_name = 'TABLE_NAME' and column_name = 'COLUMN_NAME' ) then......
--但是exists好像不能用于存储过程,所以使用count方法变通一下
SELECT COUNT (column_name) INTO V_COUNT FROM Dba_Tab_Columns
WHERE table_name = 'TABLE_NAME' AND column_name = 'COLUMN_NAME';
IF (V_COUNT > 0) THEN
--说明在TABLE_NAME表中存在COLUMN_NAME字段......
END IF;
--注意:输入的表名和字段名都必须是大写的,否则查不到记录