Cakephp 如何在php中通过单个查询保存多行数据?

Cakephp 如何在php中通过单个查询保存多行数据?,cakephp,Cakephp,如何在cake php中进行此查询?我使用了$this->saveAll(myData)。但此方法使用5个查询来插入此数据。 我想用一个查询插入此数据 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

如何在cake php中进行此查询?我使用了
$this->saveAll(myData)。但此方法使用5个查询来插入此数据。
我想用一个查询插入此数据

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
            )

    )
)您可以随时使用


我想用一个mysql查询保存这个,你可以构建自己的查询吗?我不知道saveMany和saveAll使用了多个查询嘿,Harris,我想这个函数也会触发多个插入查询而不是一个,不是吗?@Parixit不是根据代码本身:)如果你看insertMulit,它只会执行一个插入
$data = array(
  'Model' => array(
    'field' => 'value',
    'other' => 'another value'
  )
);
$ds = $this->Model->getDatasource();
$ds->insertMuli($this->Model->table, array_keys($data['Model']), $data['Model']);