表1
name,node
小王,0
小李,0我要写个多个程序读写这个数据库的程序所以每个程序的流程就是找到node为0的,先标记为9,以免别的程序再读该纪录
然后处理,根据结果把该纪录node改为1或者2
请给出完整语句 
我在vb里面用

解决方案 »

  1.   

    程序读之前先判断node是不是9,如果是9,就说明已经有人在对该数据做处理了.不是的话再操作,
    操作之前先把这条记录的node update成9,辈然后做其他处理,处理完之后再复原,或者其它值
      

  2.   

    因为是多进程,并且又不是一个事务中,可能会出现进程的意外情况,比如处理的进程死了;
    所以需要增加处理过期的方法,比如增加字段 读取时间,处理ID;
    取数据时,取NODE=0的和NODE=9并且超过一定时间的数据;
    处理时,必须要判断NODE=9且处理ID相等的才可以处理;
    最好通过后台存储过程进行处理;