对于数据库表排他更新的理解
1. 首先任何应用程序都只能有一个服务端,服务端共享数据给多个客户端访问。
(ア) 客户端从服务端取得相应的数据。
(イ) 或者更新、删除服务端的内容。
2. 当客户端A进入服务端方法更新数据库,服务端方法将被锁定。其它客户端在访问该方法时,只能被挂起,排队等待方法解锁。
3. 假设客户端A、B同时更新同一条数据,我们并不确定以A更新的数据为准,还是以B更新的数据为准,这时候就需要排他处理,也就是当我们要更新的数据已经被改变时,弹出提示对话框,阻止我们继续更新。
4. 实现方法:
(ア) 在客户端首先获取数据库中要更新的数据表数据。
(イ) 触发服务端更新方法时,传递到服务端。
(ウ) 进入服务端方法后,再次从数据库中检索出要更新的数据。
(エ) 与客户端传递过来的数据的更新时间做出比较。
(オ) 相同,则继续执行更新操作。
(カ) 不同,则说明数据在我们更新之前已经被更新,提示排他信息。