两个表的同步问题
表A
MerchantID areaid ShutName FullName
5451 05 黑龙江张玉霞 哈尔滨南港区
5531 01 山东张莉 济南市经八路济南大厦
553101 04 烟台 NULL
5531J001 04 青岛周玉珠 青岛周玉珠
5531J002 04 即墨张健 即墨张健
5531J003 04 威海丛书辉 威海丛书辉
5531J004 04 烟台郭英玲 烟台郭英玲
5531J005 04 烟台辛洁玉 烟台蓬莱辛洁玉
5531J006 04 临沂鲁烨华 临沂鲁烨华
表B
MerchantID areaid ShutName FullName u_id z_id
5451 05 黑龙江张玉霞 哈尔滨南港区 1 1
5531 01 山东张莉 济南市经八路济南大厦 1 1
553101 04 烟台 NULL 2 1
5531J001 04 青岛周玉珠 青岛周玉珠 4 1
5531J002 04 即墨张健 即墨张健 4 1
5531J003 04 威海丛书辉 威海丛书辉 2 1
5531J004 04 烟台郭英玲 烟台郭英玲 3 1
5531J005 04 烟台辛洁玉 烟台蓬莱辛洁玉 2 1
5531J006 04 临沂鲁烨华 临沂鲁烨华 1 1
A表是实时生产的表,不能轻易改动
B表是操作员的客户对应的的资料表
如果表A有修改 增加 和删除的存在
那么
B表也要做出同样的动作,但是有点不同
在B表上有个失效的字段 z_id 默认为有效
如果A删除了 B表不是删除动作,而是更新 z_id 为 失效的0
A 增加 B也要增加
A 修改 B修改
实现的方法:
表B的结果比对A
select a.mid from a where a.mid==b.mid
if($a==$b){}else{update b.z_id->0}
select b.mid from b where b.mid==a.mid
if($a==$b){}else{add a.mid->b.mid}
这样两个表的资料就同步了,因为基础资料不经常变动,维护这个表可以一天一次就可以了。