请教一下php怎么调用mysql锁?命令是什么样的?在锁的过程中,要是有其他mysql语句执行,会出现什么情况,是等待还是?

解决方案 »

  1.   

         //执行SQL语句 锁掉stat_num表     $sql = "LOCK TABLES stat_num WRITE";   //表的WRITE锁定,阻塞其他所有mysql查询进程
         $DatabaseHandler->exeCute($sql);     //执行更新或写入操作     $sql = "UPDATE stat_num SET `correct_num`=`correct_num`+1 WHERE stat_date='{$cur_date}'";
         $DatabaseHandler->exeCute($sql);     //当前请求的所有写操作做完后,执行解锁sql语句     $sql = "UNLOCK TABLES";
         $DatabaseHandler->exeCute($sql);第二个不知道  应该是等待吧
      

  2.   


    我用了这个,怎么报错了?LOCK TABLES test_table WRITE;
    call addfenrecord('1231231', 39, 'add', '100', 'testa');#调用存储过程UNLOCK TABLES;错误提示:test_table was not locked with LOCK TABLES