gpt4 book ai didi

蛋糕PHP 3.0 : How to do an insert on duplicate key update?

转载 作者:行者123 更新时间:2023-12-04 13:09:23 25 4
gpt4 key购买 nike

我有一个数组 $articles像这样

[
(int) 0 => [
'id' => '-@940039',
'xe_dsca' => 'ÜP2768G/1',
'xe_citg' => '1F0200',
'xe_cuni' => 'stk',
'xe_seak' => 'ÜP2768G/1',
'xe_seab' => '',
'xe_wght' => '0.0153',
'xe_cwun' => 'kg',
'xe_wgap' => '2',
'xe_seri' => '2',
'xe_ltct' => '2',
'xe_qual' => '2',
'xe_hama' => '2',
'xe_ctyo' => 'DE',
'xe_ccde' => '85045095',
'xe_cpln' => '240000',
'xe_spar' => '2',
'xe_wear' => '2',
'xe_ctyo_de' => null,
'xe_cean' => null,
'xe_ewm_dsce' => null,
'xe_cood' => null,
'xe_ewm_dsne' => null,
'xe_ewm_dsge' => null,
'xe_ewm_dsen' => null,
'xe_ewm_dscz' => null,
'xe_wgh1' => null,
'xe_wgh2' => null,
'xe_wgh3' => null
],
(int) 1 => [
'id' => '000-000500-00000',
'xe_dsca' => 'DUMMY ZEITBUCHUNG',
'xe_citg' => '1F0800',
'xe_cuni' => 'stk',
'xe_seak' => 'DUMMY ZEITBUCHUN',
'xe_seab' => '000-000500-00000',
'xe_wght' => '0',
'xe_cwun' => 'kg',
'xe_wgap' => '2',
'xe_seri' => '2',
'xe_ltct' => '2',
'xe_qual' => '2',
'xe_hama' => '2',
'xe_ccde' => '000',
'xe_cpln' => '930000',
'xe_spar' => '2',
'xe_wear' => '2',
'xe_ctyo' => null,
'xe_ctyo_de' => null,
'xe_cean' => null,
'xe_ewm_dsce' => null,
'xe_cood' => null,
'xe_ewm_dsne' => null,
'xe_ewm_dsge' => null,
'xe_ewm_dsen' => null,
'xe_ewm_dscz' => null,
'xe_wgh1' => null,
'xe_wgh2' => null,
'xe_wgh3' => null
]

在我的 Controller 中,我有这些行
foreach ($articles AS $article) {
$query = $this->Articles->query();
$query
->insert($required_article_fields)
->values($article)
->execute();
}

这段代码工作正常,但有没有人建议我如何在重复 key 更新时插入?一次保存多行数据的最佳做法是什么?

最佳答案

您可以使用查询 epilog()方法

foreach ($articles AS $article) {
$query = $this->Articles->query();
$query
->insert($required_article_fields)
->values($article)
->epilog('ON DUPLICATE KEY UPDATE field=field+1')
->execute();
}

如果需要安全地传递值,还可以将 QueryExpression 对象传递给该方法。

关于蛋糕PHP 3.0 : How to do an insert on duplicate key update?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24852904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com