Codeigniter交易

Codeigniter交易,第1张

Codeigniter交易

使用

transactions
手段支持数据库安全地插入数据。因此,在Codeigniter中,我们 Model中
而不是Controller中
编写 与数据库相关的所有功能 。在您的第二个代码(不起作用)中,您已经在上面指向了模型
utils
。如此简单,我确定这将无法正常工作。因为它不是与模型和控制器并行的插入数据。交易应在模型中编码( 我将在回答中用模型编写
)。


加载这些东西

  1. 数据库库
  2. 型号类别
  3. URL助手
  4. 届会

假设条件

在您的代码中,您已使用

$data
$test
作为数组。所以我假设有两个用于插入和更新数据的数组。


您的数据集

$data = array(   'title' => 'My title' ,   'name' => 'My Name' ,   'date' => 'My date');$id = 007;$test = array(   'title' => $title,   'name' => $name,   'date' => $date);

您的密码

$this->db->trans_start(); # Starting Transaction$this->db->trans_strict(FALSE); # See Note 01. If you wish can remove as well$this->db->insert('table_name', $data); # Inserting data# Updating data$this->db->where('id', $id);$this->db->update('table_name', $test);$this->db->trans_complete(); # Completing transactionif ($this->db->trans_status() === FALSE) {    # Something went wrong.    $this->db->trans_rollback();    return FALSE;} else {    # Everything is Perfect.     # Committing data to the database.    $this->db->trans_commit();    return TRUE;}

笔记

  1. 默认情况下,Codeigniter在严格模式下运行所有​​事务。当 被严格模式 启用 ,如果你正在运行的交易多组,如果一组发生故障,所有组将被回滚。如果 禁用了 严格模式 ,则每个组将 被独立对待这意味着一个组的故障不会影响其他任何组


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5101397.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存