如何使這個查詢在蛋糕php?我用$this->saveAll(myData);
。但是這種方法使用了5個查詢來插入這些數據。 我想用一個查詢插入這些數據。如何在Cake php中單一查詢保存多行數據?
INSERT INTO `table` (`id`, `value1`, `value2`) VALUES
(1, 1, 1,),
(2, 1, 2),
(3, 2, 2),
(4, 2, 3),
(5, 3, 3),
如何使這個查詢在蛋糕php?我用$this->saveAll(myData);
。但是這種方法使用了5個查詢來插入這些數據。 我想用一個查詢插入這些數據。如何在Cake php中單一查詢保存多行數據?
INSERT INTO `table` (`id`, `value1`, `value2`) VALUES
(1, 1, 1,),
(2, 1, 2),
(3, 2, 2),
(4, 2, 3),
(5, 3, 3),
試試這個方法:
$this->Model->saveMany($data);
數據應該在這個格式:
Array
(
[1] => Array
(
[Model] => Array
(
[field] => value
[field] => value
)
)
[2] => Array
(
[Model] => Array
(
[field_1] => value
[field_2] => value
)
)
)
您可以隨時使用DboSource::insertMulti()
。
$data = array(
'Model' => array(
'field' => 'value',
'other' => 'another value'
)
);
$ds = $this->Model->getDatasource();
$ds->insertMuli($this->Model->table, array_keys($data['Model']), $data['Model']);
嘿哈里斯,我覺得這個函數還會引發多個插入查詢不是隻有一個,不是嗎? – Parixit 2016-03-23 07:01:45
@Parixit不是根據代碼本身:)如果你看insertMulit它只是做一個單一的INSERT – jeremyharris 2016-03-24 16:56:08
http://book.cakephp.org/2.0/en/models/saving-your-data.html#model-savemany-array-data-null-array-options-array – 2012-08-01 12:45:37
我想要保存此與一個MySQL查詢 – EbinPaulose 2012-08-01 12:58:00
也許建立你自己的查詢?我不知道saveMany和saveAll使用了多個查詢http://book.cakephp.org/2.0/en/models/retrieving-your-data.html#model-query – 2012-08-01 13:13:09