zoukankan      html  css  js  c++  java
  • mysql锁表 和mysql事物操作 > lvyantao.cn

    用PHP实现mysql锁表

            //执行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);

    MYSQL中只有INNODB和BDB类型的数据表才能支持事务处理!其他的类型是不支持的!
    $lnk = mysql_connect("localhost", "root", "");
    mysql_select_db("test");
    mysql_query("BEGIN");
    $query = mysql_query("INSERT INTO test VALUES(1, 'yangjun')");
    $q1 = mysql_error();
    mysql_query("INSERT INTO test VALUES(1, 'yangjun')");
    $q2 = mysql_error();
    mysql_query("INSERT INTO test VALUES(2, '杨俊')");
    $q3 = mysql_error();
    if (!$q1 && !$q2 && !$q3) {
    mysql_query("COMMIT"); //全部成功,提交执行结果
    } else {
    mysql_query("ROLLBACK"); //有任何错误发生,回滚并取消执行结果

  • 相关阅读:
    NACBD
    周总结7
    周总结6
    团队题目——TD课程通
    移动端疫情展示
    周总结5
    每周总结4
    每周总结3
    每周总结2
    求最大子数组
  • 原文地址:https://www.cnblogs.com/lv_yantao/p/1675297.html
Copyright © 2011-2022 走看看