oracle数据库向应用程序发送消息的问题 最近在搞一个ORACLE开发的项目,项目中既有C/S,又有B/S结构部分;在C/S部分其中要实现应用程序和数据库之间的消息传递,即数据库中每次对相关表进行修改后,都要通知应用程序进行刷新,目前通过在应用程序中用时钟来实现,效果不好,闪;B/S结构部分在数据库数据更新时还要通过HTTP服务器动态刷新每个用户的浏览器页面,现在也是在Web页面中用时钟来实现,有没有更好的办法啊?例如通过服务器主动刷新客户端,怎么实现. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 也许您可以使用oracle 的消息队列加事务处理来完成这性工作。说白了也就是多用点pl/sql多做几个存储过程和触发器 楼主到是考虑的很多,不过我们公司的ERP要想快就手工刷新,一般也就Web页面中用时钟来实现 我以前也想用消息通知应用程序,但一直没有做,现在提供一个思路:用oracle的alter试试! 我用dbms_alert数据包做了一个,蛮好用的,改天贴出来。用消息队列,怎么通知应用程序啊?要用一个进程等待吗?Web页面中用时钟来实现?现在好像可以使用服务器端推技术来实现。那位用过没有? 我现在也是需要这种实现方式,通过Oralce直接发送消息(字符串)到工作站上,而工作站不用时钟,就像Winsock功能一样 --消息接收者需要以下代码:--注册消息CREATE OR REPLACEbegin dbms_alert.register('MyAlert');end;/set serveroutput on--监听消息declare l_status number;l_msg varchar2(1800);begin dbms_alert.waitone(name => 'MyAlert', message => l_msg, status => l_status, timeout => dbms_alert.maxwait); if (l_status = 0) then dbms_output.put_line('msg from event is' || l_msg); end if;end;--消息发送者需要以下代码:--发送消息exec dbms_alert.signal('MyAlert','Hello World!'); commit;/ oracle处理的数据量极限是多少? 请教高手帮忙把一条sqlserver的SQL转换成ORACLE的SQL 问个基础点的问题关于>=以及>的问题? pL/SQL DEVELOPER 7中 中文字符拷贝到其它软件例如Notepad会显示为乱码? 关于group by 分组之后的排序问题 请教排序的写法 外键能不能指向一个表的非主键字段? 请问什么地方可以下载Oracle 8.17 for linux? 如何将一个记录的值拆为多记录? 这个触发器该怎么写,请大侠帮忙! 高分求双机热备解决方法(在线等待、急急急!!!!!) set timing on 的时间我看不懂?
用消息队列,怎么通知应用程序啊?要用一个进程等待吗?Web页面中用时钟来实现?
现在好像可以使用服务器端推技术来实现。那位用过没有?
--注册消息
CREATE OR REPLACE
begin
dbms_alert.register('MyAlert');
end;
/set serveroutput on--监听消息
declare l_status number;
l_msg varchar2(1800);
begin
dbms_alert.waitone(name => 'MyAlert',
message => l_msg,
status => l_status,
timeout => dbms_alert.maxwait);
if (l_status = 0) then
dbms_output.put_line('msg from event is' || l_msg);
end if;
end;--消息发送者需要以下代码:
--发送消息
exec dbms_alert.signal('MyAlert','Hello World!');
commit;
/