up

解决方案 »

  1.   

    cache存此信息ID,用完销毁。取信息时检查此cache是否为null.
      

  2.   

    用数据库锁是不可能解决问题的, 因为这外锁只是在数据更新的一瞬间或者事务的整个过程起作用只能是设置记录的锁定状态字段,锁定时间字段和锁定者字段, 当有人要操作记录, 则查看是否被锁, 如果没有锁定, 则自动填写这些标志字段, 退出操作记录前抹去这些标志. 针对非正常退出页面标志字段未更新的情况, 只能是设定一个Timeout值了, 比如20分钟后锁定标志还存在, 则认为锁定无效过期了, 可以再次被其它人锁定. 同时使用都页面设置一个与Timeout相近的值作为页面的Timeout, 当快到到达过期时间, 则提示用户是否继续使用, 如果继续使用则更新锁定时间为当前时间
      

  3.   

    在查询语句后加上for update 怎么样? 这样的话就会阻止其他人的读进程。
      

  4.   

    用for update 在分析器里是可以的,但是我现在连接数据库的是ado.net,与数据库完全断开,而且我测试过了,没有办法实现的呀
      

  5.   

    类似版本控制软件
    做一个check标记针对该条记录进行check out和check in