dna*_*oli 4 sql sql-server concurrency database-design
我们有一个多用户系统,用户可以保存到中央SQL Server 2005数据库.我们遇到了一个问题,即用户刷新db中的更改而另一个用户保存新数据.我们当前收集更改的方式是每个表上都有一个时间戳列,每列都插入/更新.另一个用户将在客户端上存储时间戳,这是他最后一次从数据库中取出时间.
每次保存都在事务中完成.我们正在处理的例子如下:
这使我们认为时间戳不一定是用于确定自前端系统上次访问以来数据库更改的最佳方法.什么是更好的解决方案?
进一步的例子
有趣的问题,我想不出一个简单干净的基于T-SQL的解决方案,但这正是SQL 2008中的Change Tracking创建的同步挑战类型... http://msdn.microsoft.com /en-us/library/bb933875.aspx
本博客/文章中对变更跟踪与变更数据捕获的非常高级概述:http://blogs.technet.com/b/josebda/archive/2009/03/24/sql-server-2008-change-跟踪-CT-和更改数据捕获,cdc.aspx
如果您的一般目标是保留存储库的客户端副本,则可以将此与Microsoft Sync Framework结合使用:http://msdn.microsoft.com/en-us/sync/bb887608
| 归档时间: |
|
| 查看次数: |
5472 次 |
| 最近记录: |