H5W3
当前位置:H5W3 > 其他技术问题 > 正文

如何一直监听数据库某个表,当有数据增加时,向另外的一个表插入,并改变状态。

目前项目有一个需求要一直监听数据库某个表,当有数据进入马上向另一个表插入数据。
我现在使用的就是在php页面使用while(ture)一直执行。用shell脚本进行监听,让这个PHP文件运行在cli模式下,
可是各位还有没有更好的方法呢?希望评论区各位给出你们的建议。感谢

再说一句,我用的是sql server 的数据库。。

回答:

你需要的是触发器.

简单说下触发器能干什么,”触发器是通过事件(增、删、改)进行触发而被执行的操作。其在表中数据发生变化时自动执行”

你看,是不是还挺符合你“有数据插入时,去另一个表操作一下”的需求

触发器大体格式:

create trigger <trigger-name> on <table-name> update|insert|delete as <your-sql-want-to-proceed>

具体自己去查查吧

回答:

也许你需要引入一个读写数据库的中间件,所以对数据库的读写都经过这个中间件,中间件解析读写操作的类型,在这个里面注册事件

回答:

结合一楼的思路,使用触发器,然后调用外部程序 可以参考这个http://www.qingfengju.com/art…

但是如果二楼的方案能够实施的话,建议还是按照二楼的方式进行。

回答:

写个存储过程不就得了。没必要去监控这个东西

回答:

一楼说的情况针对同一个库里面可以这样搞,二楼说的我想应该可以满足你的需求。通过数据库中间件来实现

回答:

有个思路:写个接口。。向监测的表中插入数据的时候,请求这个接口。。然后在接口里操作另一个表。感觉应该可行

本文地址:H5W3 » 如何一直监听数据库某个表,当有数据增加时,向另外的一个表插入,并改变状态。

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址