java oracle实时数据,java实时获取oracle数据变更

CREATE OR REPLACE PROCEDURE enq_gps_lcr(in_any IN SYS.ANYDATA) IS

--agent sys.aq$_agent := sys.aq$_agent('gpsstatus_agent', null, 0);

message sys.aq$_jms_message;

enqueue_options dbms_aq.enqueue_options_t;

message_properties dbms_aq.message_properties_t;

msgid raw(16);

lcr SYS.LCR$_ROW_RECORD;

rc PLS_INTEGER;

DEVICEID varchar2(11);

GATHERDATETIME date;

LONGITUDETYPE char(1);

LONGITUDEVALUE number ;

LATITUDETYPE char(1);

LATITUDEVALUE number ;

SPEED number ;

DIRECTION number ;

BEGIN

rc := in_any.GETOBJECT(lcr);

DEVICEID:=lcr.get_value('new','DEVICEID').ACCESSvarchar2();

GATHERDATETIME := lcr.GET_VALUE('new','GATHERDATETIME').ACCESSdate();

LONGITUDETYPE := lcr.GET_VALUE('new','LONGITUDETYPE').ACCESSchar();

LONGITUDEVALUE := lcr.GET_VALUE('new','LONGITUDEVALUE').ACCESSnumber();

LATITUDETYPE := lcr.GET_VALUE('new','LATITUDETYPE').ACCESSchar();

LATITUDEVALUE := lcr.GET_VALUE('new','LATITUDEVALUE').ACCESSnumber();

SPEED := lcr.GET_VALUE('new','SPEED').ACCESSnumber();

DIRECTION := lcr.GET_VALUE('new','DIRECTION').ACCESSnumber();

message := sys.aq$_jms_message.construct(1);

--message.set_replyto(agent);

message.set_type('');

message.set_userid('strmadmin');

message.set_appid('');

message.set_groupid('');

message.set_groupseq('');

message.set_string_property('DEVICEID', DEVICEID);

message.set_string_property('GATHERDATETIME', to_char(GATHERDATETIME,'yyyy-MM-dd hh24:mi:ss'));

message.set_string_property('LONGITUDETYPE', LONGITUDETYPE);

message.set_string_property('LONGITUDEVALUE', to_char(LONGITUDEVALUE) );

message.set_string_property('LATITUDETYPE', LATITUDETYPE);

message.set_string_property('LATITUDEVALUE', to_char(LATITUDEVALUE));

message.set_string_property('SPEED', to_char(SPEED) );

message.set_string_property('DIRECTION', to_char(DIRECTION) );

--指定消息生存时间

message_properties.expiration:=60;

dbms_aq.enqueue(queue_name => 'strmadmin.gpsstatus_queue',

enqueue_options => enqueue_options,

message_properties => message_properties,

payload => message,

msgid => msgid);

COMMIT;

END;

/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值