如何使用Codeigniter仅在时间内执行2个数据库操作?

时间:2014-03-16 22:51:20

标签: php sql database codeigniter

我想在一次执行中更新2个数据库表,如果我使用SQL,我可以简单地创建一个query

$sql = "UPDATE produto SET descricao = 'desc', estoque = '2', preco = '2.00';
UPDATE table2 SET col1 = 'val1', col2 = 'val2', col3 = 'val3';
// and more operations in only database access
";

但在codeigniter我只能执行此代码:

    $data = array(
        'descricao'=>$dados[ 'descricao' ],
        'preco_custo'=>$dados['preco_custo'],
        'estoque'=>$dados['estoque']
    );

    $this->db->where( 'id', $dados[ 'id' ] );
    $this->db->update('produto', $data );

如果我需要执行任何其他操作,我需要再次访问数据库?或者有任何解决方案只使用Codeigniter方法执行更多操作??

1 个答案:

答案 0 :(得分:2)

如果您想要多次更新,您应该使用交易

http://ellislab.com/codeigniter/user-guide/database/transactions.html