设为首页 加入收藏

TOP

Oracle系统包(二)
2014-11-24 01:08:15 来源: 作者: 【 】 浏览:19
Tags:Oracle 统包

用于改变作业的例程
示例如下:
SQL>exec dbms_job.instance(2,1);
7.interval
用于改变作业的运行时间间隔
示例如下:
SQL>exec dbms_job.interval(2,'sysdate+1/24/60');
8.broken
用于设置作业的中断标识
示例如下:
SQL>exec dbms_job.broken(2,true,'sysdate+1');
9.run
用于运行已存在的作业
示例如下:
sql>exec dbms_job.run(1);
三.dbms_pipe
作用:用于在同一例程程的不同会话之间进行管道通信.注意,如果用户要执行包dbms_pipe中的过程和函数,则必须要为用户授权.
sql>conn sys/oracle as sysdba;
sql>grant execute on dbms_pipe to scott;
1.create_pipe
该函数用于建立公用管道或私有管道.如果将参数private设置为TRUE,则建立私有管道;如果设置为FALSE,则建立公用管道.
示例如下:
declare
falg int;
begin
flag:=dbms_pipe.create_pipe('public_pipe',8192,false);
if flag=0 then
dbms_output.put_line('建立公用管道成功');
end if;
end;
/
2.pack_message
该过程用于将消息写入到本地消息缓冲区
3.send_message
该函数用于将本地消息缓冲区中的内容发送到管道
4.receive_message
该函数用于接收管道消息
5.next_item_type
该函数用于确定本地消息缓冲区下一项的数据类型,如果该函数返回0,则表示管道没有任何消息;如果返回6,则表示下一项的数据类型为number;如果返回9,则表示下一项的数据类型为varchar2;如果返回11,则表示下一项的数据类型为rowid;如果返回12,则表示下一项的数据类型为date;如果返回23,则表示下一项的数据类型为raw.
6.unpack_message
该过程用于将消息缓冲区的内容写入到变量中.
7.remove_pipe
该函数用于删除已经建立的管道
8.purge
该过程用于清除管道中的内容
9.reset_buffer
该过程用于复位管道缓冲区
10.unique_session_name
该函数用于为特定会话返回惟一的名称,并且名称的最长度为30字节.
四.dbms_alert
作用:用于生成并传递数据库预警信息.使用包DBMS_ALERT,则必须以SYS登陆,为该用户授予执行权限.
sql>conn sys/oracle as sysdba
sql>grant execute on dbms_alert to scott;
1.register
用于注册预警事件
示例如下:
sql>exec dbms_alter.register('alter1');
2.remove
用于删除会话不需要的预警事件.
3.removeall
用于删除当前会话所有已注册的预警事件
语法如下:
dbms_alter.removeall;
4.set_defaults
用于设置检测预警事件的时间间隔,默认时间间隔为5秒
5.signal
用于指定预警事件所对应的预警消息.
6.waitany
用于等待当前会话的任何预警事件,并且在预警事件发生时输出相应信息.在执行该过程之前,会隐含地发出COMMIT.
语法如下:
dbms_alter.waitany (
name out varchar2,message out varchar2,
status out integer,timeout in number default maxwait
);
注:status用于返回状态值,返回0表示发生了预警事件,返回1表示超时;timeout用于设置预警事件的超时时间.
7.waitone
用于等待当前会话的特定预警事件,并且在发生预警事件时输出预警消息.
语法同上
五.dbms_transaction
作用:用于在过程,函数,和包中执行SQL事务处理语句.
1.read_only
用于开始只读事务,其作用与SQL语句SET TRANSACTION READ ONLY完全相同
2.read_write
用于开始读写事务,------------------------------------WRITE-------
3.advise_rollback
用于建议回退远程数据库的分布式事务
4.advise_nothing
用于建议远程数据库的分布式事务不进行任何处理
5.advise_commit
用于建议提交远程数据库的分布式事务
6.user_rollback_segment
用于指定事务所要使用的回滚段
7.commit_comment
用于在提交事务时指定注释.
8.commit_force
用于强制提交分布式事务.
9.commit
用于提交当前事务
10.savepoint
用于设置保存点
11.rollback
用于回退当前事务
12.rollback_savepoint
用于回退到保存点
13.rollback_force
用于强制回退分布式事务
14.begin_discrete_transaction
用于开始独立事务模式
15.purge_mixed
用于清除分布式事务的混合事务结果
16.purge_lost_db_entry
用于清除本地数据库所记载的远程事务入口,该事务入口操作因为远程数据库问题未能在远程数据库完成.
17.local_transaction_id
用于返回当前事务的事务标识号
18.step_id
用于返回排序DML事务的惟一正整数
六.dbms_session
作用:提供了使用PL/SQL实现ALTER SESSION命令,SET ROLE命令和其他会话信息的方法.
1.set_identifier
用于设置会话的客户ID号
2.set_context
用于设置应用上下文属性
3.clear_context
用于清除应用上下文的属性设置
4.clear_identifier
用于删除会话的set_client_id.
5.set_role
用于激活或禁止会话角色
6.set_sql_trace
用于激活或禁止当前会话的SQL跟踪
语法如下:
dbms_session.set_sql_trace(sql_strace boolean);
7.set_nls
用于设置NLS特征
语法如下:
dbms_session.set_nls(param varchar2,value varchar2);
8.close_database_link
用于关闭已经打开的数据库链
9.reset_package
用于复位当前会话的所有包,并且会释放包状态
10.modify_package_state
用于修改当前会话的PL/SQL程序单元的状态
语法如下:
dbms_session.modify
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇B树索引学习总结。 下一篇Oracle数据库如何搜集AWRReport

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: