我在Asp.net开发了一个Web应用程序,SQL Server 2008 R2提供了数据库。我们现在正在开发一个Iphone应用程序,它将在离线模式下工作,并定期在两个数据库之间进行数据同步。
为了使两个数据集保持同步,我们将添加一个“更新”列,它将通过存储过程或通过触发器来记录更新的日期和时间,该触发器在相关表中的行更新时启动。有关更好的选择的任何想法吗?
但是,我们不确定如何在已删除记录的情况下管理同步,因为当前应用程序配置为从数据库中删除行,因此当删除事件发生并且实际上无法识别哪些记录时这些消失了已被删除,除了为每个用户进行同步搜索,因为服务器过载而我不热衷于此。
由于Webapp已经处于生产阶段,我不热衷于在带有删除标志的表中保留已删除的记录,这也会在一段时间内导致存储问题。
我唯一能想到的就是拥有影子表来维护已激活Iphone应用程序的用户的已删除事务。同步发生时,可以删除记录。不确定我是否应该考虑明显的缺点或更好的替代方案。