问题描述
有一张用户信息表,要基于这张表的数据与另一张帐号表同步,比如用户工号就是帐号名,证件号后六位就是密码。用户信息表的数据是会增加的,希望增加后,帐号表的数据也能同步增加,所以应该要写个定时器定时执行,但问题是这个同步操作怎么样实现性能和易用性最好?
解决方案
实时性要求同步话,1. 触发器 ps: 虽然能完成需求,但个人感觉触发器不够透明,后人接收项目的时候可能都不知道这个东西,除了那种基本不会有改动的功能,不喜欢用触发器,比如记录log 表,就可以用触发器.因为做好了就很少动它.2. 就是简单明确的代码,写好注释, 让维护代码的人看到就跟看文档似的,为什么这么做,做了什么,简单明了.不要求实时性的话,就用任务调度,比如 quartz 框架, 在半夜/凌晨,或者服务器工作量最小的时候去做.
解决方案二:
引用实时性要求同步话, 1. 触发器 ......刚看了LZ对别人的回复,觉得可以无视我先前的回答好了.要么代码,要么数据库提供的功能,同问, 坐等第三种答案.
解决方案三:
LZ现在有一张用户信息表,要与另一张帐号表同步。1、用户注册,信息表新增数据,账号表同步增加;2、用户修改密码,信息表修改数据,账号表也要修改3、注销用户,信息表删除数据,账号表也要同步删除。我理解,上面的三种情况都是存在的。看了LZ目前的方案,使用差异视图的方式来做。LZ的这个需求是很明显的增量数据同步问题,其实这个可以用数据集成工具来做。原理就是源表不获增量数据(增、删、改),将增量数据同步到目标。
解决方案四:
如果是同数据库 可以考虑触发器
时间: 2024-11-01 02:11:52