php - 如何在 Codeigniter 中使用来自不同模型的许多查询的事务?
问题描述
下面是Model
使用 Codeigniter 框架的语法。所以我想做这种查询,我将很多查询分组到另一个类中,但是我在类之外使用了这个事务。
$this->db->trans_begin();
$insert1 = $this->Actmain->tempPerwakilanToTransaksi($t_nib_kppa_temp['id_permohonan']);
$insert2 = $this->Actmain->transaksiPerwakilanToHistory($t_nib_kppa_temp['id_permohonan'],$arrData['id_history']);
if(!$insert1 || !$insert2) {
$this->db->trans_rollback();
return FALSE;
} else {
$this->db->trans_commit();
echo "Yatta desune"
}
我想检查是否至少有一个查询没有成功,它会回滚所有查询。问题是,它总是返回true
来自变量$insert1
or中的查询$insert2
。它总是回Yatta Desune
显,但未执行插入和更新查询。
在 Codeigniter 3 中使用数据库事务但在不同模型中执行的一堆查询的正确方法是什么?
解决方案
推荐阅读
- winapi - 无法在右上角禁用 x 按钮的情况下关闭窗口
- c# - 必须指定收件人。当我想使用 ASP.NET 发送电子邮件时遇到此错误
- angular - p-calendar maxDate 和 maxDate 值不会实时更新
- mysql - 错误 1231 (42000):变量 'sql_mode' 不能设置为 'NO_AUTO_CREATE_USER' 的值
- nginx - 即使使用 SSL 证书,Quart 上的不和谐 OAUTH 也会收到 InsecureTransportError
- dart - 在渡槽飞镖中发送帖子请求
- java - 从 Java 客户端连接到 IBM MQ,无需任何 IBM 依赖项 jar
- sql - 如何禁用 SQL Server 中数据库的所有 DML 触发器?
- amazon-web-services - 如果我使用弹性 Beanstalk,如何设法将反向 DNS 分配给弹性 IP
- hibernate - 使用 @NotBlank 注释时提交事务时测试失败并出现错误