文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发Oracle网友经验谈之Oracle外部程序触发小结
精品推荐
特别推荐
·常用数据库比较
·ODBC API常用函数诠释
·提高ORACLE数据库的查询统计速度
·细化解析:Oracle使用的hints调整机制
·解析Oracle/Oracle Forms 的多用途代码
·从Oracle的FORM中调用REPORT的实用技巧
·Oracle SQL精妙SQL语句讲解
·ORACLE学习笔记--性能优化四
·ORACLE常用傻瓜问题1000问
·ORACLE常见错误代码的分析与解决之二
·深刻理解Oracle数据库的启动和关闭
·监控Oracle数据库的常用shell脚本
·Oracle在Solaris下的性能与调整简介
·通俗解说ORACLE
·数据库安全性策略
热点TOP10
·详细介绍ORACLE sqlplus命令
·ORACLE常用傻瓜问题1000问
·我的oracle笔记四(DBA管理)
·Oracle SQL精妙SQL语句讲解
·Oracle Tuning (Oracle 性能调整)的一些总结
·我的oracle笔记一(sql语句方面)
·程序员如何掌握计算机英语
·用正则表达式函数验证身份证号码合法性
·oracle数据库 exp/imp命令详解
·性能分析工具的使用
·ORACLE UPDATE 语句语法与性能分析看法
·在Solaris 10 X86上安装Oracle 10g RAC详解 (1)
·ORA-01092: ORACLE 例程终止。强行断开连接
·VMware下RedHat安装Oracle 9i RAC全攻略
·监控Oracle数据库的常用shell脚本
·手工创建oracle数据库
·常用数据库比较
·PL/Sql循序渐进全面学习教程
·在Solaris 10 X86上安装Oracle 10g RAC详解 (2)
·ORACLE学习笔记--性能优化一

网友经验谈之Oracle外部程序触发小结

日期:2007年7月8日 作者: 查看:[大字体 中字体 小字体]


在论坛里曾经看过一个帖子,有位用户问了这么一个问题:oracle 里一个表插入一条数据,提交后,如何让外部程序收到这个消息?

  当时没有留意,现在想想好像应该可以总结一下了。举例:

1、过程中:

...
declare
myexcept exception;
inserted_count1 number;
inserted_count2 number;
...
begin
insert into table values(...);
inserted_count1 := sql%rowcount;
...                   --可以判断inserted_count1是否大于0来确定是否插入了数据
commit;
inserted_count2 := sql%rowcount; --这里inserted_count2为0
...         --事实上,这里一定是提交成功才会执行,否则会跳到exception段
yourprocess(yourpara);--调用你自己的过程或语句跟别的过程通信
...
exception
when others then   ---你可以根据sqlcode自己去查具体的提交失败原因
...
yourprocess_for_fail(yourpara)   --调用你自己的过程跟别的过程通信
...
end;

  2、直接外部操作,建触发器:

create or replace trigger table after insert for each row
...
begin
...
yourprocess(yourprara);
...
end;
  
  当然,2的方法这只能更总到提交前,如果要监视提交后状态,你可以在操作表建立标志位或专门建个表,操作表发生变化就通过trigger更新变化信息到状态表,扫描状态表就知道是否commit;成功了

  我想这位用户应该通过trigger来调用java source来实现插入数据后来通知外部程序来做一些事情:

  使用java source的例子如下:

SQL> create or replace and compile java source named HelloWorld
2 as
3 public class HelloWorld {
4 public static void db_run (){
5 System.out.println("Hello World");
6 }
7 }
8 /

Java created.

SQL> create or replace procedure run_helloworld
2 as language java
3 name 'HelloWorld.db_run()';
4 /

Procedure created.

SQL> set serveroutput on size 5000
SQL> call dbms_java.set_output(5000) ;

Call completed.

SQL>
SQL> exec run_helloworld ;
Hello World

PL/SQL procedure successfully completed.

(出处:清风网络学院






上一篇:网站选SQL Server还是Access当后台数据库好?

下一篇:DBA解决MySQL服务器的启动和关闭的问题

网友经验谈之Oracle外部程序触发小结 相关文章:
·IE浏览器再现严重安全漏洞 微软紧急发补丁程序
·不用任何软件(木马程序)盗取账号密码
·生意人如何做生意:100个成功经验告诉您
·详细介绍ORACLE sqlplus命令
·ORACLE常用傻瓜问题1000问
·Dreamweaver MX 2004做ASP程序(4)用户注册系统
·破解程序及注册机使用方法
·我的oracle笔记四(DBA管理)
·女子受骗表演视频脱衣秀 被男网友录像多次敲诈
·C#源码读取excel数据到程序中-SQL SERVER-到dataset中
网友经验谈之Oracle外部程序触发小结 相关软件:
·C语言程序设计
·Windows环境下32位汇编语言程序设计
·FLASH个人简历源程序(FLA)
·C语言程序设计视频教程 CSF 教材:谭浩强《c程序设计》
·Oracle v8.1.7
·零起点教你如何破解软件和制作注册机 and 视频+程序
·Sim Aquarium v2.06 -非常漂亮的海底世界屏幕保护程序
·硅谷 C++程序设计视频教程 齐幼菊
·C++程序设计语言特别版(中文版+英文原版)
·程序人生

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot