av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

網(wǎng)友經(jīng)驗談之Oracle外部程序觸發(fā)小結

瀏覽:3日期:2023-11-25 15:40:27
在論壇里曾經(jīng)看過一個帖子,有位用戶問了這么一個問題:Oracle 里一個表插入一條數(shù)據(jù),提交后,如何讓外部程序收到這個消息? 當時沒有留意,現(xiàn)在想想似乎應該可以總結一下了。舉例:1、過程中:...declaremyexcept exception;inserted_count1 number;inserted_count2 number;...begininsert into table values(...);inserted_count1 := sql%rowcount;...--可以判定inserted_count1是否大于0來確定是否插入了數(shù)據(jù)commit;inserted_count2 := sql%rowcount; --這里inserted_count2為0... --事實上,這里一定是提交成功才會執(zhí)行,否則會跳到exception段yourprocess(yourpara);--調用你自己的過程或語句跟別的過程通信...exceptionwhen others then---你可以根據(jù)sqlcode自己去查具體的提交失敗原因...yourprocess_for_fail(yourpara)--調用你自己的過程跟別的過程通信...end;2、直接外部操作,建觸發(fā)器:create or replace trigger table after insert for each row...begin...yourprocess(yourprara);...end;當然,2的方法這只能更總到提交前,假如要監(jiān)視提交后狀態(tài),你可以在操作表建立標志位或專門建個表,操作表發(fā)生變化就通過trigger更新變化信息到狀態(tài)表,掃描狀態(tài)表就知道是否commit;成功了我想這位用戶應該通過trigger來調用Java source來實現(xiàn)插入數(shù)據(jù)后來通知外部程序來做一些事情:使用java source的例子如下:SQL> create or replace and compile java source named HelloWorld2 as3 public class HelloWorld {4 public static void db_run (){5 System.out.println('Hello World');6 }7 }8 /Java created.SQL> create or replace procedure run_helloworld 2 as language java3 name 'HelloWorld.db_run()';4 /Procedure created.SQL> set serveroutput on size 5000SQL> call dbms_java.set_output(5000) ;Call completed.SQL> SQL> exec run_helloworld ;Hello WorldPL/SQL procedure sUCcessfully completed.
主站蜘蛛池模板: av乱码 | 黄色在线播放视频 | 国产精品综合久久 | 97精品国产97久久久久久免费 | 日干夜干| av香港经典三级级 在线 | 精品成人69xx.xyz | 久久久久久久久久性 | 久久综合狠狠综合久久综合88 | 2018中文字幕第一页 | 国产精品久久久一区二区三区 | 日韩国产中文字幕 | 麻豆国产一区二区三区四区 | 少妇特黄a一区二区三区88av | 国产片侵犯亲女视频播放 | 久久精品综合 | av在线一区二区三区 | 日韩www| 日韩欧美视频 | 亚洲三级av | 精品国产乱码久久久久久丨区2区 | 特黄小视频 | 国产农村妇女毛片精品久久麻豆 | 九九热在线观看视频 | 久久机热| 欧美日韩一区在线 | 久久精品国产一区老色匹 | 国产一区二区在线免费视频 | 国产欧美精品在线 | 超碰精品在线观看 | 国产精品乱码一区二区三区 | 日韩精品在线播放 | 精品成人免费一区二区在线播放 | 国产乱码久久久久久 | 亚洲免费在线视频 | 国产精品呻吟久久av凹凸 | 韩国av一区二区 | 欧美中文一区 | zzzwww在线看片免费 | 夜夜草天天草 | 中文字幕蜜臀av |