我想知道如果使用PHP和MySQL將新記錄插入數據庫時如何觸發通知。關於數據庫更改的實時更新通知MYSQL PHP
9
A
回答
4
MySQL現在有觸發器和存儲過程,但我不相信他們有任何方式通知外部進程,所以據我所知這是不可能的。你必須每隔一秒鐘輪詢一下數據庫才能查找新記錄。
即使是這樣,它也會假定你的PHP進程是長期存在的,這樣它就可以掛起來記錄出現。鑑於大多數PHP用於代碼運行的網站,然後儘快退出,因此不清楚這與您的產品是否兼容。
5
最簡單的事情可能是每隔幾秒輪詢一次數據庫,看看是否插入了新記錄。由於數據庫中的查詢緩存,這不會影響數據庫的性能。
2
如果所有的數據庫更改都是由PHP創建的,我會爲mysql_query創建一個包裝函數,如果查詢類型是INSERT,REPLACE,UPDATE或DELETE,我會調用一個函數發送相應的電子郵件。
編輯:我忘了提,但你也可以做類似如下:
if (mysql_affected_rows($this->connection) > 0)
{
// mail(...)
}
0
有一天,我在MySQL的論壇上問,如果像火鳥和Interbase的事件在MySQL的存在,我看到有人回答是(我真的不知道)
檢查:http://forums.mysql.com/read.php?84,3629,175177#msg-175177
-1
這可以相對容易地使用存儲過程和觸發器來實現。我創建了一個「實時查看」屏幕,其中有一個滾動顯示屏,該顯示屏通過我的事件表中的新事件進行更新。它可能有點煩瑣,但一旦運行得很快。
2
您可以創建一個觸發器,而不是在發生更新時運行。可以使用UDF(用戶定義函數)運行/通知外部進程。沒有任何內建的方法可以這樣做,所以這是一個加載UDF插件的例子,它會爲您做。
Google for'mysql udf sys_exec'或'mysql udf ipc'。
相關問題
- 1. 基於Oracle JDBC數據庫更改通知更新表
- 2. 數據庫更改時通知
- 3. PHP或MySQL慣於更新數據庫
- 4. 關於數據庫更改的ASP.NET通知
- 5. 關於數據庫數據更改的ZK UI更新
- 6. PHP更新MySQL數據庫
- 7. PHP - 更新MySQL數據庫
- 8. 通知DataTemplateSelector關於更改
- 9. 實時數據更新PHP + MYSQL
- 10. 通知數據庫更改的用戶
- 11. Mysql數據庫更改狀態時使用Push.js推送通知
- 12. 更新時間戳PHP MySQL數據庫
- 13. MYSQL和PHP數據庫更新不會更新數據庫
- 14. 當更新Firebase數據庫時發送通知更新
- 15. 實時數據庫更新
- 16. 實時更新可搜索的數據庫MYSQL和PHP
- 17. 數據庫更改DB2的通知?
- 18. 更新數據庫更改時的datagridview
- 19. 實時通知和更新
- 20. 關於更改排隊/後端數據庫更新的文本
- 21. 關於從MYSQL數據庫讀取的實時更新詞雲的建議
- 22. 當使用PHP更新時,MySQL數據庫更新爲空值
- 23. 當數據庫中的數據更改時收到通知
- 24. MYSQL更新不更新數據庫?
- 25. Eclipse鏈接數據庫更改通知
- 26. PHP更新Mysql數據庫中的值
- 27. 更新MySQL數據庫的PHP語句
- 28. Cocoa - 關於NSUserDefaults值更改的通知?
- 29. PHP MySQL - 通過數組更新數據
- 30. 關於數據庫更新的問題
顯然這是可能的,但有一些插件: http://dev.mysql.com/doc/refman/5.0/en/faqs-triggers.html#qandaitem-22-5-1-10 – 2009-04-14 22:51:23