我们说我们有一个数据库转储" A"在一些重要的数据库更改和转储之前完成" B"做完之后。是否有一个程序/脚本将采取这些转储,区分它们并输出转换数据库所必需的SQL查询" A"进入" B"状态?
例如,diff结果如下:
- INSERT INTO table1 (`idx`) VALUES (1), (2), (3), (4), (5);
+ INSERT INTO table1 (`idx`) VALUES (1), (2), (3), (4), (5), (6);
...
- INSERT INTO table2 (`idx`, `txt`) VALUES (1, 'a'), (2, 'b'), (3, 'c');
+ INSERT INTO table2 (`idx`, `txt`) VALUES (1, 'a'), (2, 'b'), (3, 'x');
会导致这些SQL查询:
INSERT INTO table1 (`idx`) VALUES (6);
UPDATE table2 SET txt = 'x' WHERE idx = 3;
我知道使用它需要谨慎,但我认为当一些数据库更改必须伴随代码更改时,它会很有用。那么,有这样的程序吗?