|
|
1
1
你的问题缺乏一个好答案所需的细节,但我会试一试。触发器很适合以表为目标,但是如果您对系统范围的写入感兴趣,那么您将需要一个更易于维护的更好的方法。对于系统范围的写入,我将研究在事务日志中检测更改的方法。不幸的是,每个供应商实现此部分的方式都不同,因此不太可能有一种方法适用于所有供应商。也就是说,在数据库服务器中工作的方法不太可能。但在操作系统级别上,服务器外部可能有更优雅的方式。例如,如果事务日志是磁盘上的一个文件,那么检测文件更改的某种简单脚本将指示数据库已写入。 请记住,您只要求检测数据库写入。如果您需要知道它是哪种类型的写操作,那么您需要进入事务日志来查看其中的内容。这肯定是特定于供应商的。 |
|
|
2
0
这取决于你想做什么。如果需要启动数据库外部的东西,那么对数据库进行简单的轮询就可以做到这一点,否则特定于数据库的触发器可能是最好的。 |
|
|
3
0
如果您想独立于数据库,那么轮询可以工作。它不是很有效率,也不是很优雅。如果您被诅咒使用不支持触发器的数据库,它也会起作用。我们过去使用的解决方法是使用一个定时(比如通过cron)的脚本来执行
然后将其与上次运行脚本时获得的值进行比较。如果匹配,告诉脚本退出或休眠。如果没有,做你的事。 这种方法还存在其他问题(例如,如果脚本占用时间太长,则会出现积压,或者出现并发问题等)。当然,性能也会成为一个问题! |
|
|
blogger13 · 视频租赁店数据库的规范化 1 年前 |
|
|
ì¤ì¤í · 为什么LEFT INNER JOIN被弃用? 1 年前 |
|
|
relatively_random · 确保两个表之间一致的共同参考 1 年前 |
|
|
Grenish Rai · Firestore错误“用户文档不存在” 2 年前 |
|
|
Saijo-Shi · PLpgsql中的更新触发器 2 年前 |
|
Dante · Django::配置不当:池不支持持久连接 2 年前 |
|
YouLocalRUser · 删除重复行,保留第一行 2 年前 |