0

我有一个使用 MySQL 数据库的 PHP 应用程序。它有一个名为 profile 的表,用于存储用户的详细信息。现在需要在他执行任务时保留该配置文件的快照。这意味着必须克隆与用户相关的整个表行。

我找到了两种方法。

1)向表中添加另一列以提及它是否被克隆。那么他的原始档案就可以分离了。(原始/克隆)。配置文件数据将保存在一张表中。

其他方法是..

2)添加另一个类似于配置文件(具有相同字段)的表并将克隆的配置文件存储在其中。配置文件数据将保存在两个表中。

在性能和可用性方面什么是最有效的?

4

1 回答 1

0

如果您将它放在一个表中,只用 acolumn/field来区分它是克隆还是原始,那么您将始终需要处理双倍的记录数。而如果它在另一张桌子上,你每次只需要担心一张桌子,除非你同时需要两张桌子。另一件事是,如果您有一个单独的表,则您的主表有一个虚拟备份。所以,在任何情况下,一个人遇到了麻烦,你都有可以依靠的东西,反之亦然。此外,如果它是一个单独的表,您不会将自己置于混淆记录的危险之中。换句话说,我更喜欢你的第二种方法而不是第一种。

于 2013-10-24T10:16:39.073 回答