Sign-up....

ASP中不知大家是如何处理多用户同时修改一条记录的呢?

ASP中不知大家是如何处理多用户同时修改一条记录的呢?

谢谢

[33 byte] By [msdn] at [2007-8-15 10:04:50]
# 1 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

conn.BeginTrans

conn.Execute("UPDATE.....................")

conn.CommitTrans

eglic at 2006-6-7 17:24:19 >
# 2 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

没做过.估计悲观锁定可以吧?

wtg321 at 2006-6-7 17:29:36 >
# 3 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

mark

sotwind at 2006-6-7 17:43:35 >
# 4 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

eglic能解释一下吗

boleynlong at 2006-6-8 17:08:26 >
# 5 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

事务处理

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()

soft_2008 at 2006-6-8 17:45:12 >
# 6 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

现在的问题是后一次修改会覆盖前一次的修改记录。

如何实现当该记录有用户修改的时候,给其他用户一个提示信息。使得该记录不能被其他用户处理呢?我查过相关的资料,说是使用时间戳,但资料说的不详细。请高手们解惑,不甚感激

boleynlong at 2006-6-8 17:46:38 >
# 7 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

说是使用时间戳,有个字段专门记录这个记录被修改的时间,在被编辑得时候先写一个时间在里面,其他的人如果编辑的时候,发现字段有时间,就提示不可编辑,编辑的人在班级完成的时候把字段清空,或者改成固定的时间(好在其他人改的时候做标记),

特殊情况下,比如编辑者的机器突然断电或其他情况(处理程序在中途关闭页面的时候不做任何处理的时候),有后台处理,或其他方法(放在页面里面触发),判断记录里面的时间和现在的时间差,超过一定时间还没有释放的,自动释放,其他人可以进行编辑

taochunsong at 2006-6-9 9:40:34 >
# 8 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

我是这么处理的,大家都可以修改,但是在提交数据库的时候要做一个判断,给出是否处理的提示。

jsnt_rd at 2006-6-9 10:19:09 >
# 9 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

mark

judge9999 at 2006-6-9 11:17:25 >
# 10 Re: ASP中不知大家是如何处理多用户同时修改一条记录的呢?

问题我已经解决,使用时间戳。哈哈,谢谢各位!

boleynlong at 2006-6-9 13:58:39 >

Web

All Classified