thinkphp 多表 事务详解

时间:2023-07-08 05:43:36 

如下所示:


function makeAcquire($nUsers,$nAwards)
    {
     //更新数据库
     $tranDb = new Model();
     $tranDb->startTrans();
     for($i = 0; $i < sizeof($nUsers); $i++)
     {
      //更新表Acquire
      $flagAc = $tranDb->table('Acquire')->add($acquire);
      //更新表Users
      $where = array('u_id'=>$nUsers[$i]['u_id']);
      $flagU = $tranDb->table('Users')->where($where)->setInc('u_man_count',1);
      //更新表Award
      $where = array('a_id'=>$nAwards[$i]['a_id']);
      $flagA = $tranDb->table('Award')->where($where)->setDec('a_count',1);
     }
     if($flagAc && $flagU && $flagA)
     {
      $tranDb->commit();
     }
     else
     {
      $tranDb->rollback();
     }
    }


标签:thinkphp,多表,事务
0
投稿

猜你喜欢

  • Python爬虫实例——scrapy框架爬取拉勾网招聘信息

    2023-01-20 19:06:45
  • Python提取支付宝和微信支付二维码的示例代码

    2021-04-08 19:38:42
  • server.mappath方法详解

    2023-07-05 08:07:48
  • 如何写JS数组sort的比较函数

    2010-07-02 12:12:00
  • Python .format()函数使用方法详解

    2022-10-12 04:18:12
  • webpack的 rquire.context用法实现工程自动化的方法

    2024-05-11 09:05:29
  • JS页面获取 session 值,作用域和闭包学习笔记

    2024-04-22 13:23:06
  • Python中threading库实现线程锁与释放锁

    2021-11-13 10:26:49
  • Python 调用VC++的动态链接库(DLL)

    2023-06-19 09:01:44
  • pytorch geometric的GNN、GCN的节点分类方式

    2022-12-24 16:01:23
  • 从8个方面优化ASP代码

    2007-09-16 18:01:00
  • 基于Python的科学占卜工具开发过程

    2023-01-01 03:15:05
  • DIV+CSS高度自适应网页代码实例

    2008-09-20 08:00:00
  • djano一对一、多对多、分页实例代码

    2022-11-06 23:05:44
  • MySQL产生死锁原因分析讲解

    2024-01-25 10:39:19
  • 如何利用Python实现简单C++程序范围分析

    2022-07-19 00:32:48
  • JavaScript中的toDateString()方法使用详解

    2024-05-13 10:37:51
  • JS+HTML实现的圆形可点击区域示例【3种方法】

    2024-04-10 10:42:30
  • MySql分表、分库、分片和分区知识深入详解

    2024-01-20 19:11:03
  • 初步解析Python中的yield函数的用法

    2023-01-03 12:23:05
  • asp之家 网络编程 m.aspxhome.com