2012-02-09 109 views
0

我要同步位于2级型动物的服务器有不同的模式2个的数据库表,例如:同步。 2个数据库表正确

表A字段:ID,article_value

表B字段:article_id的,文章

表A由一个程序使用,表B由另一个程序使用。

我想创建一个同步脚本,将两个表同步到同一个条目。

我曾想过创建包含的字段1个表:

A_number(的表A物品数),B_number(在表B中的文章号)。

因此,当脚本启动时,它会计算表A中的条目数,并与字段A_number进行比较。如果有更多的条目,它将它们添加到表B中,然后更新A_number。

在另一个方向相同的东西。

这是最好的方法吗? in php

回答

0

你可以在两个表上添加“上次修改”时间戳吗?然后,您将始终知道自上次同步以来是否修改了一行。

+0

是的,这是一个很好的解决方案,但在某些表中没有任何日期,我不能添加该字段,因为我需要修改这两个程序。 – adieuuu 2012-02-09 14:34:50

+0

您不必修改程序 - 以防添加的字段具有默认值。然后,使用这些表的另一个程序将永远不会知道添加了新的字段。在MySQL中,我相信,一种常见的方法是添加一个NULLable DATETIME字段,并具有ON INSERT和ON UPDATE触发器,将DATETIME字段设置为NOW()。 – 2012-02-09 14:44:58

+0

啊,我明白了。例如,我在表A和表B中添加一个触发器ON INSERT,将日期时间字段设置为now,然后在我的表'sync'中比较例如上次同步的日期。 (我是学生对不起) 但它需要在他们的数据库表中添加一个字段? – adieuuu 2012-02-09 15:03:20