通过配置db_table_triggers
字段可以同步触发器到数据,推荐尽量使用触发器而不是使用commit
,rollback
机制,毕竟触发器的回滚是在数据库内部完成,更加安全
相当于可以在php
中写数据库触发器了,引用常量,调整逻辑都很方便,可以更好的适配业务逻辑
比如:./__project__/class/db/User.class.php
中的触发器代码
解释:
当user表中的,user_isban
,user_isdelete
,user_password_hash
变化后,user_version
同步变化,如果其他设备登录的同一个账户,会检测到user_version
的变化,被踢下线,强制登出
在更改了用户名后同步记录最后更改的时间,user_usernamelastedittime
,如果需要限定用户名更改频率的话,可以用到
触发器在实际开发中用的并不多,原因就是代码逻辑变化了之后,mysql那边还要手动去改,比较麻烦且不踏实,设计触发器同步就是为了解决这个问题,项目中如果有其他新人进来也可以通过搜索相关字段就发现运行逻辑是什么,而不是调试bug半天了都想不到是触发器那边的问题