为什么不建议采用数据库写入的方式集成不同系统
今天参加一个项目方案沟通会,实施方是一个外部公司,需要我帮忙确定内部系统和本次开发系统的接口需求。实施方提出的方案是直接写入内部系统的数据库,我给出的建议是通过交换一个XML文件实现数据同步。理由有三个:
1.审计跟踪。直接写入数据库,很难记录访问日志,一旦出现问题,很难界定责任。
2.数据完整性。一个单据是否有效,单靠数据库提供的约束机制是很难准确描述的,在很多情况下,是由应用逻辑负责检查验证。如果通过数据库直接写入,应用逻辑的检查功能很难触发,数据完整性保证会有问题。
3.灵活性。对方的方案相当于建立了对于我方系统实现的依赖,如果将来内部系统实现有变化,对方的逻辑就需要修改,会引起一些列不必要的麻烦。