回答
您可以在表上執行INSERT/UPDATE/DELETE觸發器,以便在對錶進行「數據」更改時執行某些操作。 (而不是改變表的結構)
我相信10g也支持視圖觸發器。
但我不確定如何通過查詢來通知其他java進程。
對不起。
你可能會創建一些解決方案,其中java應用程序有一個「偵聽」服務器,並且數據庫將其推回一條消息。但聽起來很難維持。
Justin Cave在評論中建議您可以配置Oracle Streams以發送Java應用程序可以通過JMS訂閱的邏輯更改記錄(LCR)。或者觸發器可以將記錄寫入Java可以通過JMS訂閱的高級隊列。
你仍然需要警惕的Oracle transations的.. 由於甲骨文方式交易工作,觸發條件會在變化,但它也可能觸發多次..
和anycase的Java應用程序無法在執行提交之前「查看」更改。
根據體系結構的重要性,您可以配置Oracle Streams以發送Java應用程序可以通過JMS訂閱的邏輯更改記錄(LCR)。或者觸發器可以將記錄寫入Java可以通過JMS訂閱的高級隊列。 – 2008-12-03 14:54:05
看看Oracle Change Notification,這是一個非常有趣的Oracle功能。
從Oracle文檔:「數據庫更改通知」是一項功能,它使客戶端應用程序能夠向數據庫註冊查詢,並接收通知以響應與查詢關聯的對象上的DML或DDL更改。數據庫在DML或DDL事務提交時「。
- 1. WMI:監視器註冊表更改
- 2. jQuery監視器表的更改?
- 3. 更改監視器目錄
- 4. JavaScript/jQuery:監視器更改爲元素?
- 5. 監視器會話更改事件c
- 6. 監視文件更改Java
- 7. 監視文件的更改
- 8. 監視文件更改
- 9. AIX監視目錄更改
- 10. 文件監視和更改
- 11. 監視文件的更改
- 12. 如何監視oracle數據庫更新?
- 13. 如何在Perl調試器中監視表達式的更改?
- 14. MySQL表更改的事件監聽器?
- 15. 靜態表更改DOM監聽器
- 16. 更改Oracle表名
- 17. ABAddressBook更改監聽器
- 18. JQuery URL更改監聽器
- 19. Android AsyncTask - 更改監聽器
- 20. 使用Zabbix監視Oracle DB
- 21. Jetty監視器WAR文件並在更改時更新
- 22. 監視對數據庫和更新列表的更改
- 23. 如何將更改監聽器添加到列表(而不是列表視圖)
- 24. 更改收集器上的監聽器(顯然是監聽模型更改)
- 25. 監視rootScope變量以更改progressBar值
- 26. 使用libuv監視文件更改
- 27. 監視對陣列的更改
- 28. 監視文件更改 - Asyncio和Flask
- 29. 如何監視文件的更改?
- 30. 使用Node.js監視Mongo的更改
監控數據庫表的變化是'設計異味'。您應該考慮引入由企業服務總線(ESB)支持的事件驅動體系結構(EDA)。例如Mule(www.mulesoft.com)。 – 2011-12-22 09:44:51
好多流行語和「體系結構」總是正確的答案 – Gaius 2011-12-22 16:00:25