php - 在 PHP/CodeIgniter 中,不止一个事务在没有完成另一个事务的情况下开始;比如嵌套事务

标签 php mysql codeigniter phpmyadmin hmvc

我在 Codeigniter 中使用 HMVC
其中有inv_module的模型和一个是普通模型

首先$this->inv_module->model用mysql事务在数据库中存储了一些数据;
然后在$this->inv_module->model事务完成之前模态调用$this->common->modal,还有一个mysql事务。

谁能告诉我,当我的第一笔交易没有完成,普通模型的交易开始时会发生什么?

我的情况是这样的-

$this->db->trans_start();
$this->db->insert('tbl_categories', $category_array);

    $this->db->trans_start();
        $this->CI->db->insert('tbl_macro',$macro_array);
    $this->db->trans_complete();

$this->db->trans_complete();

此代码调用来自另一个模型 -

$this->db->trans_start();
    $this->CI->db->insert('tbl_macro',$macro_array);
$this->db->trans_complete();

请任何人帮助我

最佳答案

嵌套事务将仅在其自身上提交或失败。

“外部”交易仍然有效。

关于php - 在 PHP/CodeIgniter 中,不止一个事务在没有完成另一个事务的情况下开始;比如嵌套事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52056508/

相关文章:

php - 独特的 url slugs(路由)

php - 在 CodeIgniter Controller 中的任何其他方法之前运行一个方法

php - 使用 PHP、AJAX 和 MySQL 检查更新的最快方法

mysql - mysql会自动压缩数据库吗?

mysql - 如何与 MySQL/PHP 建立安全连接

mysql - 连接表的 SQL 查询

php - 哪一个更好?何时或如果其他情况?

php - PDO 和 SSH2 隧道

php - 如何只为未登录用户取消注册Wordpress样式表?

php - 从 MySQL 数据库内部调用 PHP 变量