情况是:我有一些专用客户端(终端)和一个数据库,操作按以下顺序执行:
如何更好地解决它? MS SQL服务器中是否有一些解决方案?
答案 0 :(得分:1)
乐观并发用于检测此冲突,听起来您已经能够检测到它。
通常,您采用两种方法中的一种,最后一次是在总是覆盖更改的胜利中,或者在第二次写入失败的第一次胜利中。
如果第二次写入失败,那么您通常会向用户显示一条消息,表明数据已更改且更改将丢失,然后您刷新数据。
另一种选择是向他们展示他们当前的编辑,然后在刷新后显示数据(第一次保存的编辑),并让他们选择是否要覆盖更改。
此过程称为冲突解决方案,您采用的方法取决于您的用户是谁以及有关数据的业务规则。