【问题标题】:Handling primary keys when syncing data同步数据时处理主键
【发布时间】:2014-03-02 10:47:53
【问题描述】:

我正在开发 android 应用程序,该应用程序将使用 wcf 服务将其与服务器上的数据存储接口。可以从网站和我的 android 客户端添加和更改数据,我需要反映数据库的最新状态。我不清楚的是,如果我在我的本地数据库中插入一行(在电话上,这将在第一种可能的情况下同步),而其他人在我之前插入一行具有健全的 id(主键)怎么办?可以将我的更改同步到服务器。

我听说过 sql server 中的 row_version 列,但我不确定我是否可以以及如何在我的情况下使用它。有人知道如何解决这个问题吗?

谢谢。

【问题讨论】:

    标签: android sql-server wcf sync


    【解决方案1】:

    两种处理方法是:

    • 有一个主键,由两部分组成,一个是进行原始插入的数据库的 ID,一个是序列号。
    • 使用 Guid 作为主键,键是在代码中生成的,而不是由数据库生成的。

    由于您使用的是 SQL Server,因此您应该查看MS Sync Framework。但这可能不是一个完整的解决方案,因为您使用的是 Andriod。

    【讨论】:

      【解决方案2】:

      这取决于您的 PK 是什么以及您如何将移动设备同步到服务器。合并复制适用于标识列,我已经看到它(即合并复制)在 android 设备上演示。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-02-20
        • 1970-01-01
        • 1970-01-01
        • 2019-02-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多