简体   繁体   English

java jdbc insert在Oracle db中触发触发器

[英]java jdbc insert fire a trigger in oracle db

suppose that 假设

  • i make an insert into a table using Java Jdbc 我使用Java Jdbc在表中插入
  • the insert fire a trigger 插入触发触发器

java waits that the trigger finish the execution or it continue the execution?? java等待触发器完成执行,还是继续执行?

(using oracle 11g) (使用oracle 11g)

if it dose continue without wait, there i way to wait the end of the trigger execution? 如果它继续不等待,我有办法等待触发器执行结束吗?

The INSERT statement is not complete until all the triggers that need to fire have fired and run to completion. 直到所有需要触发的触发器都已触发并运行完成后, INSERT语句才会完成。 It doesn't matter what front-end language you use to issue the INSERT statement, the INSERT must always wait for the triggers to complete. 发出INSERT语句使用哪种前端语言都没有关系, INSERT必须始终等待触发器完成。

Even If a INSERT calls N NUMBER OF TRIGGER , First all the TRIGGERS will complete execution while the INSERT will wait, and then it will come back to INSERT 即使INSERT调用N NUMBER OF TRIGGER ,首先所有TRIGGERS将完成执行,而INSERT将等待,然后将返回INSERT

that is logical as well, if I am firing some triggers before inserting into a database than I would want them to complete before inserting. 同样合理的是,如果我在插入数据库之前触发了一些触发器,而不希望它们在插入之前完成。

The JAVA wont move to next statement until the INSERT statement responds and it wont respond until it has completed execution and it will not complete execution until All Triggers that are Triggered are completed. JAVA不会移动到下一条语句,直到INSERT语句响应为止,直到完成执行为止,它都不会响应,并且直到所有被触发的触发器都完成后,才能完成执行。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM