通过cakephp中执行的最后一个查询获取所有插入记录的ID

时间:2011-06-13 06:04:37

标签: cakephp lastinsertid

我可以找到最后插入记录的主键ID,如下所示:

$this->Model->save($record);
$id = $this->Model->getLastInsertId();

我正在寻找类似的东西:

$this->Model->saveAll($records);
$ids = $this->Model->getLastInsertIds();

我正在插入100条记录,因此最好将它们全部插入到一个查询中。执行用例还需要几秒钟。有没有办法通过上次查询获取所有插入记录的ID?

许多论坛都提到了这一点,但没有明确的答案。

1 个答案:

答案 0 :(得分:0)

我认为这可能有用,可能就是你要找的东西:

$this->Model->saveAll($records);
$id1 = $this->Model1->id();
$id2 = $this->Model2->id();
$id3 = $this->Model3->id();
...

请记住将model1,model2,model3替换为要保存的每个模型。

你看过关于保存数据的cakephp教程吗?链接在这里: http://book.cakephp.org/view/1031/Saving-Your-Data

希望这有帮助。