0

我有两个 MySQL 数据库 DB1 和 DB2。DB1 只有 1 个表,其中没有大量列。所有这些数据都被传输并被拆分并存储在 DB2 中的几个表(比如 2 个)中。

For example, DB1 has a table1 which looks like

        Student_Name   Id   Address   Attendance   Marks
        ------------   --   -------   ----------   -----
        John            1   90th st       70         90

The records that are transferred from DB1.table1 are stored in DB2.table and DB2.table2 in the following manner

DB2.table 1: Id   Student_Name   Address   
             --   ------------   -------
             1     John          90th st


DB2.table 2: Id   Attendance   Marks
             --   ----------   -----
             1     70            90

DB2 每天都会使用来自 DB1 的新记录进行更新。现在我想提出一些测试用例来确定是否由于某些原因没有将任何记录从 DB1 复制到 DB2(例如:如果 Id 丢失,则记录不会被复制)。

我从来没有写过这种类型的测试用例。我需要一些帮助,或者任何人都可以提出任何计划,例如如何开始测试。有没有我可以使用的工具来做到这一点?

提前致谢

4

2 回答 2

0

这会吃掉资源,但是:

SELECT * FROM DB1.table1 WHERE id NOT IN (SELECT id FROM DB2.table1 UNION SELECT id FROM DB2.table2);
于 2012-09-17T17:13:57.673 回答
0

如果这是作为转换过程的一部分用于 QA,则以当前格式导出 DB1,然后以与 DB1 相同的格式导出 DB2。使用diff.

如果您想在线进行,请在 DB2 中放置一个“conversion_date”列,以限制您需要在@zebediah49 给您的查询中检查的记录数。

或者 DB2 中的触发器如何更新 DB1 以将记录标记为“已接收”?

世界是你的牡蛎。

于 2012-09-17T17:45:40.127 回答