在事务中存储LAST_INSERT_ID()

时间:2010-06-03 02:53:47

标签: php mysql codeigniter transactions

我使用codeigniter的数据库abstarction,并使用它进行事务处理。我的问题是,我有几个表插入几个表,但我需要第一个插入查询中的插入ID。有没有办法存储多个后续插入的最后一个插入ID?

我不明白为什么,但ci内置函数不起作用。

1 个答案:

答案 0 :(得分:9)

在执行查询后立即抓住insert_id ...

$this->db->insert('table1', $data);
$insert_id1 = $this->db->insert_id();

$this->db->insert('table2', $data);
$insert_id2 = $this->db->insert_id();

$this->db->insert('table3', $data);
$insert_id3 = $this->db->insert_id();

这是最简单的方法。