近段时间,由于工作上的需要,接手了一个新的项目,由于开发和测试环境测试都是用的同一个服务器上的数据库表,感觉并没有问题(ps:因为没有注意到其他库的字段);
原服务器数据库:A库 B库
偶然更换另一台服务器上的数据库,才暴露出问题,很惊奇的问题,一查看错误很无语了,竟然找不到另外一个库的表,后来才发现,某一张表中有触发器
转移后的数据库:B库
由于项目迁移的原因,原来有A和B两个库,表中B库中某表的触发器,有一个触发器是更新A库中的某表,所以也是没有问题的;迁移之后,问题就来了,没有A库,所以发生了诡异的一幕。
平时项目中不建议使用触发器,消耗内存,要求触发器效率高,代码可读性相对不是太高;当然了,既然遇到了,那还是学习一下吧。