代码之家  ›  专栏  ›  技术社区  ›  Dostee

处理过程中逐步执行的数据时的最佳实践

  •  0
  • Dostee  · 技术社区  · 16 年前

    我目前正在为一个手持设备(wm 6.0,cf 2.0,sqlce 3.5)创建一个Windows应用程序,该设备只有在连接到一个Dock时才从服务器提取数据(所有重要数据在掌上电脑上维护/更改,直到它返回并停靠以与服务器同步)。这些数据与UPS所做的相似之处在于,它管理从一个位置到另一个位置的项目的取货和取货,并记录这些“事务”发生的时间。

    最初,手持设备有几个源表( pickups dropoffs )以及一些验证表。在给定的取走或丢弃过程中,我试图找出沿着这个多步骤过程移动数据的最佳方法。

    对于一辆皮卡,我现在…

    1. 首先,根据一个共同的特征从pickup中选择一个子集,假设包的颜色是“蓝色”。所以我选择所有的“蓝色”包并将它们插入 temppickups 表。

    2. 然后,用户必须确定所有需要提取的蓝色包(中的项 临时工 )在他所在的地点需要取走哪些物品,所以他选择了一个“取货地点”以及 临时工 插入到 tempsitepickups .

    3. 然后,用户从一个列表中选择他想要从中提取的所有项目(从 暴风雨 )并运行报告以确认完整性。

    4. 然后他确认这些是他想要的,物品是 n转移到单独的表中( pickedUpItems ,添加了记录传递时间和内容的列)以便更容易更新服务器(而不必从原始表中创建select语句来查找更新的记录)

    现在,我可以让原始表的附加列填充空值,直到插入传递时间,然后使用is not空值作为仅同步更新记录的限制条件。但是,我的趋势是,当数据从其父表更改时,它将被放入一个新表(这只发生3次=3个新表),直到到达目的表(当它完成时,原始表和目的表之间的所有新表都将清空,以便下次提取或丢弃)。

    这是在应用程序中处理此类数据跟踪的最佳方法吗?你的想法会有帮助的。 谢谢!

    *如果你想澄清这个假设的某些方面,请告诉我。

    1 回复  |  直到 16 年前
        1
  •  1
  •   Tom H zenazn    16 年前

    立即想到的是只有一个表,并且有一个“状态”列,例如项目的当前状态(项目选择、站点选择、项目拾取等)。 您所引用的其他列可以放置在单独的表中。

    但是另一方面,拥有单独的表可以简化和加速SQL查询,特别是在有许多记录的情况下。

    只是一些想法…

    推荐文章