ASP中不知大家是如何处理多用户同时修改一条记录的呢?
ASP中不知大家是如何处理多用户同时修改一条记录的呢?
谢谢
ASP中不知大家是如何处理多用户同时修改一条记录的呢?
谢谢
conn.BeginTrans
conn.Execute("UPDATE.....................")
conn.CommitTrans
没做过.估计悲观锁定可以吧?
mark
eglic能解释一下吗
事务处理
Application.Lock()
Conn.BeginTrans
conn.execute("Insert into ....")
conn.execute("Update .....")
....
if err Then
Conn.rollbacktrans
bl=false
Msg="添加失败:"&err.description
else
Conn.CommitTrans
Msg="添加成功!"
end if
Application.UnLock()
现在的问题是后一次修改会覆盖前一次的修改记录。
如何实现当该记录有用户修改的时候,给其他用户一个提示信息。使得该记录不能被其他用户处理呢?我查过相关的资料,说是使用时间戳,但资料说的不详细。请高手们解惑,不甚感激
说是使用时间戳,有个字段专门记录这个记录被修改的时间,在被编辑得时候先写一个时间在里面,其他的人如果编辑的时候,发现字段有时间,就提示不可编辑,编辑的人在班级完成的时候把字段清空,或者改成固定的时间(好在其他人改的时候做标记),
特殊情况下,比如编辑者的机器突然断电或其他情况(处理程序在中途关闭页面的时候不做任何处理的时候),有后台处理,或其他方法(放在页面里面触发),判断记录里面的时间和现在的时间差,超过一定时间还没有释放的,自动释放,其他人可以进行编辑
我是这么处理的,大家都可以修改,但是在提交数据库的时候要做一个判断,给出是否处理的提示。
mark
问题我已经解决,使用时间戳。哈哈,谢谢各位!