我想知道如果使用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