0

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

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

我正在寻找这样的东西:

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

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

很多论坛都问过这个问题,但没有明确的答案。

4

1 回答 1

0

我认为这可能有效,并且可能是您正在寻找的:

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

请记住将模型 1、模型 2、模型 3 替换为您要保存到的每个模型。

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

希望这可以帮助。

于 2011-06-13T07:42:38.157 回答