问题:在实际的系统开发和后期的数据维护工作中,经常会遇到这样的需求—将一个表的增量数据插入到该数据表中。
这个需求场景可以这么理解:
第一种、A系统和B系统共用某一基础数据,但A系统是在内网部署,为了严格的安全考虑,只允许B系统定期去A系统所在内网,现场将该基础数据导出为excel表(或者导出为insert into语句),再通过光盘拷贝。B系统就需要将excel表数据导入到自己系统的数据库。
第二种、C系统的某个基础数据,需要由专门人员定期统计,然后维护到数据库中。
实际业务中,我遇到的情况是第一种,但是我准备用第二种情况举例子,效果是一样的。(我们的目的是搞清楚怎么实现这个需求,不必去追求鸡蛋到底是哪只母鸡下的。)
我们就假定有个学生信息管理系统,学生表student的数据,由辅导员在新生开学前将新生的数据从excel导入到student表中,而这个excel表也包括了以往已经导入的学生信息。此时要解决的问题就是,如何只是将这一届新生的数据导入,而不是导入全部的数据。
下图是辅导员整理的学生数据excel表,其中绿色背景的为新一届学生信息,白色的是去年的学生信息。
学生信息管理系统的学生表结构:
学生表中原有数据&