我想得到一个最后插入的ID

时间:2016-07-01 07:21:39

标签: mysql controller cakephp-3.0

有2个表quotedetails和quotationmaster以及一个公共字段QuoteNo。 SNO是报价大师的主要关键。我想获得最大的sno并使用它我想将相同的QuoteNo插入到2个不同的表中。 继承我的代码。

$response = '';
$customer=TableRegistry::get('quotationmaster');
$query=$customer->query();
$this->set(array('data'=>$query));
$response = $customer->find();
foreach($response as $row)
{
    //echo $row['QuoteNo'];
    $x++;
}
$qno = $x + 1;
$nqno = 'Q1-'.$qno;
 $query->insert(['QuoteNo'])->
 values(['QuoteNo'=>$nqno])->execute();
 if($query) 
{
    $this->Flash->success('Saved');
    $this->redirect(['controller'=>'Stockcheck','action'=>'index']);
}   

$quotedetails=TableRegistry::get('quotationmaster');
$detquery=$quotedetails->query();
$options = $detquery->select(['QuoteNo'],['SerialNO' => $query->func()->MAX('SNO')]);
$qresponse = $quotedetails->find('all', $options);


Any helps are appreciable...

1 个答案:

答案 0 :(得分:0)

您可以尝试使用:

echo $this->SNO->getInsertID();
echo $this->SNO->getLastInsertID();

您可以使用上述任何方法获取最后插入的ID。