亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

網友經驗談之Oracle外部程序觸發小結

瀏覽:5日期:2023-11-25 15:40:27
在論壇里曾經看過一個帖子,有位用戶問了這么一個問題:Oracle 里一個表插入一條數據,提交后,如何讓外部程序收到這個消息? 當時沒有留意,現在想想似乎應該可以總結一下了。舉例:1、過程中:...declaremyexcept exception;inserted_count1 number;inserted_count2 number;...begininsert into table values(...);inserted_count1 := sql%rowcount;...--可以判定inserted_count1是否大于0來確定是否插入了數據commit;inserted_count2 := sql%rowcount; --這里inserted_count2為0... --事實上,這里一定是提交成功才會執行,否則會跳到exception段yourprocess(yourpara);--調用你自己的過程或語句跟別的過程通信...exceptionwhen others then---你可以根據sqlcode自己去查具體的提交失敗原因...yourprocess_for_fail(yourpara)--調用你自己的過程跟別的過程通信...end;2、直接外部操作,建觸發器:create or replace trigger table after insert for each row...begin...yourprocess(yourprara);...end;當然,2的方法這只能更總到提交前,假如要監視提交后狀態,你可以在操作表建立標志位或專門建個表,操作表發生變化就通過trigger更新變化信息到狀態表,掃描狀態表就知道是否commit;成功了我想這位用戶應該通過trigger來調用Java source來實現插入數據后來通知外部程序來做一些事情:使用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.
標簽: Oracle 數據庫
主站蜘蛛池模板: 超级碰碰碰免费视频播放 | 黄视频在线免费 | 国外欧美一区另类中文字幕 | 久伊人网| 国产免费福利体检区久久 | 国产三级在线观看免费 | 精品国产福利一区二区在线 | 欧美丰满丝袜videossex | 日韩午夜 | 日韩欧美一区二区三区不卡在线 | 亚洲一区二区在线成人 | 正在播放亚洲一区 | 国产在线每日更新 | 特级淫片日本高清视频 | 黄色在线观看网址 | 欧美国产日韩综合 | 国产日本在线视频 | 免费在线观看a级毛片 | 欧美一级毛片免费网站 | 国产一区二区三区在线影院 | 91久久亚洲精品国产一区二区 | 全黄a免费一级毛片人人爱 全黄一级裸片视频在线观看 | 免费观看91视频 | 日本三级韩国三级三级a级按摩 | 大尺度一级毛片波多野结衣 | 精品国产第一国产综合精品 | 台湾小明看看 | 久热精品视频在线观看99小说 | 亚洲免费人成在线视频观看 | 在线观看日本永久免费视频 | 亚洲精品成人久久 | 国产一级片视频 | 狠狠色噜噜狠狠狠狠97不卡 | 99热er| 亚洲小说春色综合另类网蜜桃 | 精品在线免费视频 | 91麻豆精品国产自产在线 | 国产视频福利在线 | 欧美日韩国产人成在线观看 | 亚洲一区精品视频在线 | 国产成人影视 |