Oracle 触发器

create or replace trigger InsertEdcTerminal
after INSERT on edc_terminal
FOR EACH ROW
DECLARE
merchantId char(15);
terminalId char(8);
uservalue char(6) ;
updatedate char(8);
updatetime char(6);
v_cardtype Merchant_Card.Card_Type%TYPE;
v_cardstate merchant_card.card_stat%TYPE;
v_banktype merchant_card.bank_type%TYPE;
BEGIN

merchantid:=:new.MERCHANT_ID;
terminalId:=:new.TERMINAL_ID;
uservalue:=:new.UPDATE_OPER;
updatedate:=:new.UPDATE_DATE;
updatetime:=:new.UPDATE_TIME;
 

insert into pos_key_base(merchant_id,terminal_id,mac_flag,safe_flag,change_mode)values(merchantId,terminalId,'0','0','2');

insert into edc_trans(merchant_id,terminal_id,trans_bitmap,update_oper,update_date,update_time)values(merchantId,terminalId,'111111111110111111000111111111',uservalue,updatedate,updatetime);
DECLARE 
CURSOR c_emp IS SELECT Card_Type,card_stat,bank_type FROM Merchant_Card where MERCHANT_ID=merchantId;
BEGIN
   OPEN c_emp;
       LOOP
         FETCH c_emp INTO v_cardtype,v_cardstate,v_banktype;
         EXIT WHEN c_emp%NOTFOUND;        
         insert into edc_card(merchant_id,terminal_id,card_type,bank_type,card_stat,update_oper,update_date,update_time)
                       values(merchantId,terminalId,v_cardtype,v_banktype,v_cardstate,uservalue,updatedate,updatetime);
       END LOOP;
CLOSE c_emp;
END;
end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值