用触发器如何在java中删除数据库中两个表中的记录(两个表有关联如表A.aID=表B.bID)

用触发器如何在java中删除数据库中两个表中的记录(两个表有关联如表A.aID=表B.bID),第1张

这个 是在数据库内 写触发器就可以了

create or replace trigger tri_table_A

after delete on table_A

for each row

begin

delete from table_b where b.id=:old.id

end tri_table_A

/

触发器顾名思意就是在某个动作执行时自动触发执行的,不用调用,比如你是在add和delete数据时加触发器,只要你定义的对,数据库在向你指定的那张表add和delete数据时,该触发器就会自动触发

2.在Java程序里创建触发器

String sql=+" CREATE TRIGGER catefiles_trigger AFTER INSERT ON catefiles FOR EACH ROW"

+" begin"

+" declare scannum int"

+" set scannum = (select num from est_client_catescan_status where"

+" cateid=new.cateId and taskid=new.taskId and clientid=new.clientId)"

+" if(scannum>=0) then"

+" update catescan_status set num=scannum+1 where cateid=new.cateId and taskid=new.taskId and clientid=new.clientId"

+" else"

+" insert catescan_status(cateid,num,status,taskid,clientid) values(new.cateId,1,0,new.taskid,new.clientId)"

+" end if"

+" end"

Connection con = DbConnectionManager.getConnection()

PreparedStatement pstmt = con.prepareStatement(sql)

pstmt.execute()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10054241.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存