tp6使用事务正常插入但是却显示失败的提示

简介: tp6使用事务正常插入但是却显示失败的提示



 

问题:使用事务后正常插入数据表内但是却返回的是失败的提示

可以看见数据表正常插入,但是却返回的失败的提示,直接排查好吧:

1:排查插入回滚的$e

原因:

可以看见我是有返回提示词的,但是现在却没有了,说明回滚出问题

解决方案:直接去看别人的博客,发现跟我的没有任何出入

2:排查是否执行到了回滚

原因:既然不返回值,那我怎么知道你是不是真的执行了呢?

解决方案:直接在回滚上面进行终止

if (!$result) {
    return 1;
    DB::rollBack();//错误 回滚事务
    throw new PDOException('申请失败!');
   }

结果依旧不行

3:排查成功语句

原因:你的没有报失败了,也插入成功了,那说明跟失败部分没有一点问题了

当排除所有可能之后,剩下的,不管多难以置信,那就是真相。

                                                                                                                             ---福尔摩斯

我这边用的是tp的快捷语法:

$this->success('发送成功');

发现别人用的都是类似于:

return json(['code'=>201,'data'=>$e->getMessage()]);

那就没什么好说的了,干就完了。

最后果然成功了:

return json(['code'=>1,'msg'=>'发送成功','time'=>time(),'data'=>'true']);

总结

没有无缘无故的报错,无非就是没有找到报错位置而已,多列举可能,然后逐一排除

相关文章
|
1月前
|
JavaScript 关系型数据库 MySQL
关于 MySQL 重复读导致的重复插入问题
本文介绍了在开发业务接口时遇到的MySQL重复读导致的数据重复插入问题,并通过伪代码示例详细解析了问题产生的原因。文章提出了四种解决方案:使用共享锁、控制事务并发执行、强制当前读以及调整隔离级别为READ COMMITTED,旨在确保读取最新数据,避免数据重复插入。
|
6月前
|
关系型数据库 MySQL 数据库
mysql,归零,无法自动排序,删除id,表单的数据没有从零开始出现怎样解决?删除数据仍然从删除的地方该怎样解决?表单的数据没有从2开始,而是从之前的删除的序号开始自增。
mysql,归零,无法自动排序,删除id,表单的数据没有从零开始出现怎样解决?删除数据仍然从删除的地方该怎样解决?表单的数据没有从2开始,而是从之前的删除的序号开始自增。
|
8月前
|
关系型数据库 MySQL 测试技术
当update修改数据与原数据相同时会再次执行吗
当update修改数据与原数据相同时会再次执行吗
55 1
|
消息中间件 数据采集 Kafka
每次join之后没有正确处理数据的重复或缺失情况
每次join之后没有正确处理数据的重复或缺失情况
131 1
|
SQL 关系型数据库 MySQL
操作delete或者update语句,加个limit或者循环分批次删除
操作delete或者update语句,加个limit或者循环分批次删除
|
关系型数据库
错误代码:1062键“ PRIMARY”的条目“ 1”重复
错误代码:1062键“ PRIMARY”的条目“ 1”重复
353 0
|
8月前
|
SQL 关系型数据库 MySQL
MySQL insert 遇到delete 唯一键未提交导致死锁
一 前言死锁,其实是一个很有意思也很有挑战的技术问题,大概每个DBA和部分开发同学都会在工作过程中遇见 。关于死锁我会持续写一个系列的案例分析,希望能够对想了解死锁的朋友有所帮助二案例分析2.1 业务场景用户录入商品,应用程序会提前检查是否存在相同记录,如果有则先删除再插入;如果没有则直接插入。2....
338 0
|
SQL 关系型数据库 MySQL
十一、操作delete或者update语句,加个limit或者循环分批次删除
十一、操作delete或者update语句,加个limit或者循环分批次删除
344 0
|
关系型数据库 MySQL Linux