系统与系统之间数据一致性问题?

honest19 2004-04-22 10:48:36
假设1、我有一个人员管理系统(设为A系统),其中有人员信息表person
person( id primary key,
department,
password);
2、一个业务系统B,其中也有一个人员信息表person(假设A系统与B系统各有自己的数据库):
person( id primary key,
department,
password);
3、B系统中person表中的数据是通过数据链路读取A系统中person中的数据来更新自己;

问题:当A系统中person表中id的编码规范变了的时候,业务系统B中person表中的数据如何与A系统中的数据保持一致,但又不能影响到B系统中其他表中的老数据与B系统中person表中老的人员信息编码的关联。
...全文
185 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
leeyihan 2004-07-27
  • 打赏
  • 举报
回复
如果两个数据库可以互通,可以在A、B表里设置触发器,由触发器保证数据的一致。或者在更新A/B的同时,记录SQL语句,再在另一侧定时执行。
snowyi 2004-07-20
  • 打赏
  • 举报
回复
可以采用 IamGood(上帝疼我)说的建立一个中间映射表的方法,不过这样的系统是十分脆弱的,运行效率极底,还容易出现错误。为了长远起见,并且不想做太大的改动的话,建议同时更改A和B的人员编码。
klbt 2004-07-18
  • 打赏
  • 举报
回复
需要在建议一个列。
aling2004 2004-07-17
  • 打赏
  • 举报
回复

A和B保持同步,应该在A改变的时候,通过一定的手段(比如存储过程)同步更新B及关联到B的其他表,否则你的系统会越来越乱


IamGood 2004-04-23
  • 打赏
  • 举报
回复
建立一个中间表,用于对应两个表之间的关系.

person(id,id)
zhongxh 2004-04-23
  • 打赏
  • 举报
回复
A和B之间的通讯和系统是什么架构?

如果B系统允许修改的话,我认为应该建立一个新表,来保存映射关系,而不是企图在两个静态表中直接实现数据一致。

具体情况,欢迎Email讨论:zhongxiaohua@citiz.net

我很有兴趣和您一起学习讨论这个问题。

1,759

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 企业信息化
社区管理员
  • 企业信息化
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧