我的仓库中有许多旧的,缓慢的,基于Windows CE的条形码扫描仪,我正在编写一个C#Winforms应用程序,以便与服务器上的SQL Server 2008 R2数据库进行通讯。
扫描仪通过wifi连接,我们的覆盖范围充裕。
我正在寻找一种有效的方法来确保:
此刻,我已经在所有数据库表上获得了触发器,每次执行插入或更新操作时都会将日期时间放入LastUpdated列中,但是显然一旦删除了一行,它就消失了,我大概需要将整个查询拉到扫描仪中,并将其与扫描仪的副本进行比较,以查看缺少的内容-为了避免问题,我试图避免这种情况。列不多,因此拉整行不是问题-我不需要每个列的原子性;我只需要知道要插入哪些行即可。
我已经简要了解了SQLS的变更跟踪功能,但需要多花点功夫...看起来它可以让我找出被删除的内容,但是肯定会产生巨大的影响性能和/或数据库大小?
我也无法对数据库的模式进行大的更改-它已经在使用中,所以我不确定我已经读过的其他一些同步模式是否可用。
我想我只需要指出正确的方向,即可有效地做到这一点。链接到一篇很好的解释性文章,而该文章对SQL不太熟练,那将是很好的(我知道基础知识,但绝对不是合适的DBA,我只是被推到那个角色)。