一个 sql 文件时程序初始化时导入的配置数据,另一个 sql 文件是升级时导出的配置数据库, 两个文件中记录有相同的表,初始化的数据库 sql 文件的某些表字段可能会被改变, 则导出的 sql 文件对应表要做出相应字段修改,同时在配置数据中添加相应的字段默认值,然后重新导入修改后的 sql 文件。 该如何实现
![]() | 1 Septembers 2017-03-01 12:55:34 +08:00 实现解析 SQL 分析差异不如 直接倒入数据库在数据库里处理差异性来的直接 (按照你想做的思路你需要找个 SQL 解析器 处理后 重新生成 SQL (你写这些代码的时间不如吧两份 SQL 倒入数据库通过 INSERT FROM SELECT 来解决 |
2 SuAlien OP @Septembers 你说的这种方式具体要如何实现? |
3 SuAlien OP @Septembers 初始化的数据是在一个用于初始化的 sql 文件中 |
4 Michaelssss 2017-03-01 16:27:14 +08:00 只看标题,不如直接用 beyondCompare ,剩下的不知道楼主描述的什么。。。 |
![]() | 5 crytis 2017-03-01 17:49:36 +08:00 via iPhone 2 个文件分别执行后,导出,导出的文件保证了格式一致,然后 kdiff 之类的对比 |
![]() | 6 situs 2017-03-01 17:53:23 +08:00 hash |
![]() | 7 cloudzhou 2017-03-01 17:55:39 +08:00 > diff a.sql b.sql or > git diff a.sql b.sql |
![]() | 8 iminto 2017-03-07 14:08:54 +08:00 |