如SQL2000有个表学生(ID,姓名,年龄,班级)
在VFP中用SPT方式读取某班级的记录后,如
SQLEXEC(句柄,"select*from学生where班级='001'","tmp_学生")
把班级=001的学生资料读到VFP中,查看,然后,我想修改这些记录
由于修改多条记录,是需要点时间,慢慢的输入,修改的...
问题来了,如果有个老师,刚好要打印这个班级的数据,
而我正在修改这些数据,有可能修改完整了,也UPDATE完毕,也有可能,修改了1部分,还没有更新,
我要怎么做,才能做到,我这个班级=001的数据,在我确定要修改的时候,其他人不能读到,或者就算读到了,也有提示"数据某人正在编辑"
我看了一些SQL2000锁记录的,就是不怎么怎么关联在一起
后来,我想在我表上增加1个字段,自己来锁.如学生(ID,姓名,年龄,班级,锁)
SQLEXEC(句柄,"select*from学生where班级='001'","tmp_学生")
在VFP中有个按钮,"编辑",按"编辑"后,发送
SQLEXEC(句柄,"update学生set锁=1where班级='001'")
其他人读记录时,用
SQLEXEC(句柄,"select*from学生where班级='001'and锁=0","tmp_学生")
这样,不给人家读,不知道大家是怎么做的.
当然,其实,要这样实现的话,还有几个字段的,如学生(ID,姓名,年龄,班级,锁,谁锁,锁时间)等等来配合...

1 个解决方案

#1


https://blog.csdn.net/Mr_Smile2014/article/details/47211025
在这里,看的到,说,加1个时间字段,当多人在更新1个记录时,利用时间字段来判断,如果前后时间相同,就更新,否则,就不更新.
这只是,处理了同时更新问题,但在编辑的这段时间内,还是有人读取数据了.
我为什么要禁止,我在编辑数据的过程中,不允许别人读取数据?
举个例,就拿单据来说吧.
付款单(单号,物料,数量,单价,合计,收款)
我发现这个单有问题,有些数据需要更改,如修改单价,按正常操作,我是先把这单的资料从SQL2000上读取下来,然修改,然后上传更新.
但如果我在做这些的过程中,另外的1个人,他把这个单付款了,,,但刚才说了,这个但是有问题的,发现了的,正常,要等修改完成后,才能付款的.
现在,由于没阻止别人查到这个数据,导致付款错误了...


更多相关文章

  1. 要查询选修了所有课程的学生信息,怎样用sql实现?
  2. 约汗——基于Android的大学生找伙伴约运动app 开发总结

随机推荐

  1. Android进阶——阿里Android开发手册学习
  2. Android禁止锁屏
  3. Android中listview中的button
  4. Android样式的开发:Style篇
  5. android EditText设置不可写
  6. android 在线API
  7. android开发架构设计学习
  8. android版本对应表
  9. 新年过后献上关于Android内存泄漏的种种
  10. Android通讯:通话