数据库触发行为流
该功能用于在数据库发生变更(新增、更新或删除)时自动触发行为流,提升项目自动化水平。
典型场景
- 用户付费达到一定金额时自动升级为会员
- 订单完成时自动发送微信通知
- 用户积分变更时自动生成操作记录,便于追踪
配置流程
以“用户付费金额大于 1000 时自动升级为 VIP”为例:
添加行为流
- 设置入参 order_id
- 添加获取订单节点,统计该用户总金额
- 添加更新数据节点,将该账号“等级”更新为“会员”
添加触发器
保存行为流后,添加数据库触发器。
首选选择操作类型。当前支持 4 种操作类型:数据新增时、数据更新时、数据删除时、数据新增或更新时。
在这个例子中,是在用户完成了订单后,也就是订单状态被更新为“completed”时。
因此,操作类型选择“数据更新时”,数据表选择“order”表,并设置过滤条件为“status = ‘completed’”。并将行为流入参 order_id 绑定为更新的 order 的 id。
查看触发历史
可在日志系统中查看触发记录,详情查看:日志服务 。
限额与购买
自动执行行为流(定时触发和数据库变更触发)有次数限制:
- 免费赠送,每月月初重置:
- 免费版:1000 次/月
- 高级版:10000 次/月
- 专业版:50000 次/月
- 付费购买,永久有效:
- 费用:10000 次/10 元
注意事项
-
系统会阻止循环触发
在同一触发链中,某触发器只会被触发一次,避免死循环。 -
避免同时修改同一批数据
多个行为流同时修改同一批数据可能导致死锁。 -
数据导入可能导致大批量触发
如果对某表设置了新增触发器,批量导入数据时每条数据都会触发一次。 -
数据库触发器配置过滤条件
可获取关联表数据作为过滤条件,但行为流入参无法获取关联表数据。
Last updated on