gpt4 book ai didi

php - 确定数据库是否已更改的最佳方法?

转载 作者:行者123 更新时间:2023-12-03 18:39:03 25 4
gpt4 key购买 nike

我正在为画廊应用程序构建一个 sqlite 数据库。我想知道使用时间戳来检查数据库是否已更新是一种好习惯,或者是否有更好的方法来做到这一点。

这是我所拥有的......三张 table :

buildings
buliding_id PK
code
name
description
timestamp

building_album
album_id PK
building_id FK (reference to buildings->building_id)
album_url
timestamp

building_images
image_id PK
album_id FK (reference to building_album->album_id)
image
timestamp

截至目前,我将让应用程序检查服务器的数据库,以查看是否有任何时间戳已更改,以及它们是否更改了这些字段。

最佳答案

我将从这里开始对该主题进行更广泛的讨论:How to Sync iPhone Core Data with web server, and then push to other devices? .

但是,如果您想做一些简单的单向信息从服务器同步到移动设备,一种“简单”的方法是:

  • 修改该服务器数据库以引入跨所有表使用的某些唯一标识符(无论是事务 ID 还是版本 ID)的概念;
  • 确保修改服务器以使用自动递增/更新的标识符记录对“主”表的任何创建、更新和删除;此事务/版本标识符可以在表本身中或使用某些共享事务日志;
  • 在服务器上编写一个例程,以便客户端可以检索当前标识符;
  • 让应用程序跟踪它成功接收并完成同步/复制的最后一个标识符;
  • 编写一些服务器例程,客户端可以使用其“最后一次成功”标识符调用该例程,服务器将返回自该标识符以来已更改的所有记录;和
  • 编写一些移动设备代码以获取上一步的响应并相应地更新其内部数据库。

  • 如果您还想在移动设备上同步更改并将它们发送回服务器,或者如果您对可以在服务器数据库中进行哪些更改有限制,那么这一切都会变得更加复杂。

    关于php - 确定数据库是否已更改的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11723299/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com