本帖最后由 helloqhq 于 2011-12-19 17:32:09 编辑

解决方案 »

  1.   

    数据库资源是共享,不可能限制读取,加锁只是防止重复写
    另外 mysql 只提供表级加锁
      

  2.   

    mysql有自己的机制,你只用考虑数据大小,读取快慢
      

  3.   

    SELECT * FROM code WHERE is_used=0 ORDER BY Id LIMIT 1 FOR UPDATE
    ————————————————————————————————
    基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,分享给大家,欢迎技术交流 :)
      

  4.   

    老大,你这两句好像都错了耶 :D
    ————————————————————————————————
    基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,分享给大家,欢迎技术交流 :)
      

  5.   

    innodb提供行级锁,老大可能接触多的是老版本的MySQL.
      

  6.   

    这个for update具体如何用在这里我还没想明白,对我来说,用事务是最清楚简单的,
      

  7.   

    表引擎用的MyISAM:那么只支持表级锁;InnoDB引擎可以支持行级锁。
    像楼主那种情况,数据库会自动处理。当写数据时候,数据库会自动加上写锁,直到写锁撤销后,才可以读数据。
      

  8.   

    如果用mysql控制不可取,还是在code控制吧。
      

  9.   

    我的表是InnoDB的,怎么实现行级锁呢?
      

  10.   

    我说错了没关系,因为我会改正
    我不知道也没关系,因为我会去学习http://hchmsguo.iteye.com/blog/454214