这款产品有一点要注意:
某些客户可能已经有正在用的管理系统软件,我们需要把客户目前再用的管理系统的数据库导入我们的产品的数据中。不同的产品之间,数据库的设计并不完全一致,迁移当然无法做到所有信息都能“无损”迁移,但业务核心该有的关键字段基本都大同小异,关键数据基本都能迁移。
关于数据库设计与数据迁移,有两种架构,选哪个:
数据一致性约束放在数据库层面(外键、触发器、存储过程等),当然代码层面也尽量加入用户输入验证与数据一致性检查,只不过以数据库的检查为主。给客户导数据的时候,针对性编写 SQL 文件,直接进行数据库转换。
数据一致性约束放在代码层面,数据库完全不使用外键、触发器、存储过程等约束,给客户导数据的时候,不写 SQL,而是直接写代码,使用代码一行一行读取老数据库,然后在代码层面进行数据转换,然后再用代码一行一行插入新数据库。
PS:客户的数据量都不会太大,基本不会涉及分库分表。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.