TP5事务操作简明实例

本文介绍了TP5框架中进行事务操作的典型应用场景和简单实例,强调了事务完整性的概念,例如在转账操作中如何保证数据一致性。并指出MySQL的InnoDB引擎对事务处理的支持。
摘要由CSDN通过智能技术生成

一、使用场景:

如果一个操作会改变数据库多处信息,并且这些信息是密切相关的,

为了确保每一处改动都是成功的,如果其中一处改动不成功,就将其它改动撤销,以保证数据(事务)的完整性。

比如:你给我转账10000块,需要把你的余额减10000,我的加10000,如果万一我的余额写入失败,那么理应你的余额不变,

不然这10000就蒸发了~~

二、简明实例:

需要数据库引擎支持事务处理。

比如 MySQL 的 MyISAM 不支持事务处理,需要使用 InnoDB 引擎。

实例:


        try {

            Db::startTrans();

            //将数据1存入表1,并获取ID:
            $re['t1'] = Db::name('table1')
                ->insertGetId([
                    'content1' => $content1
                ]);

            //将数据2写入表2
            $re['t2'] = Db::name('table2')
                ->insert([
                    'id' => $re['t1']࿰
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值