易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE 游标和游标变量的区别

如何定义游标类型
TYPE ref_type_name IS REF CURSOR [RETURN return_type];
声明游标变量
cursor_name ref_type_name;
从技术底层看,两者是相同的。普通plsql cursor在定义时是“静态”的。而Ref cursors可以动态打开。
例如下面例子:
Declare
type rc is ref cursor;
cursor c is select * from dual;
l_cursor rc;
begin
if ( to_char(sysdate,'dd') = 30 ) then
       open l_cursor for 'select * from emp';
elsif ( to_char(sysdate,'dd') = 29 ) then
       open l_cursor for select * from dept;
else
       open l_cursor for select * from dual;
end if;
open c;
end;
/
l          rc根据逻辑动态打开;而游标c定义好了只有就无法修改了。
l          ref cursor可以返回给客户端,cursor则不行。
l          cursor可以是全局的global ,ref cursor则必须定义在过程或函数中。
l          ref cursor可以在子程序间传递,cursor则不行。
l          cursor中定义的静态sql比ref cursor效率高,所以ref cursor通常用在向客户端返回结果集。


相关文档:

Oracle 批量导入Sequence

 select 'create sequence '||sequence_name||  
       ' minvalue '||min_value||  
       ' maxvalue '||max_value||  
       ' start with '||last_number||  
&n ......

oracle审计详解

原帖: http://blog.chinaunix.net/u2/66903/showart_2082884.html
Oracle使用大量不同的审计方法来监控使用何种权限,以及访问哪些对象。审计不会防止使用这些权限,但可以提供有用的信息,用于揭示权限的滥用和误用。
下表中总结了Oracle数据库中不同类型的审计。
审 计 类 型
说    明
语句审计 ......

oracle command window 输出显示output参数

fmobile输入参数,msg输出参数
--方法1
 variable msg varchar2(100)
variable fmobile varchar2(100):='13424242890'
exec smsrun.PKG_SETNEIZHI.p_Whynomt(fmobile,msg)
print msg
--方法2
set serveroutput on;
  declare
  FMOBILE varchar2(100):='13424242890';
  msg varchar2(100):= ......

ORACLE SAVE EXCEPTION 子句

今天在一个帖子里看到shiyiwan的回帖中提及到了两个自己以前没见过的概念,save exception和dml error logging。上网搜了搜相关内容,看了看大概明白意思,不过在实际运用中还是没怎么用过。保存下来,以后用的到的话方便查阅。
这一篇是关于save exception的,另外一篇dml error logging的参见如下链接
http://blog.csdn ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号