php execute 更新不变,php – Doctrine executeUpdate数组参数
我怎么能用數(shù)組更新doctrine,所以我不做每次循環(huán)(我只想做1次調(diào)用數(shù)據(jù)庫)
$myarray = [1, 2, 3];
$sql = "UPDATE `mytable` SET is_processing = :is_processing, end_time=NOW() WHERE id = :id";
$result = $this->connection->executeUpdate(
$sql,
array(
'is_processing' => false,
'id' => $myarray // This is unknown number amount of array
)
);
我想要實(shí)現(xiàn)的是:
它應(yīng)該使用字段is_processing = false更新表,endTime變?yōu)楫?dāng)前時(shí)間,其中id =數(shù)組指向的任何內(nèi)容
解決方法:
在查詢中使用IN子句.
UPDATE `mytable` SET is_processing = :is_processing, end_time=NOW() WHERE id IN(:ids)
然后
$result = $this->connection->executeUpdate(
$sql,
array(
'is_processing' => false,
'ids' => [3, 25]
),
array(
'ids' => \Doctrine\DBAL\Connection::PARAM_INT_ARRAY
)
);
標(biāo)簽:php,doctrine,symfony,doctrine-orm
來源: https://codeday.me/bug/20190611/1220029.html
總結(jié)
以上是生活随笔為你收集整理的php execute 更新不变,php – Doctrine executeUpdate数组参数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 汽车压缩机电磁阀坏了会造成制冷剂不足吗?
- 下一篇: 途达车身拉花出厂就有还是后来贴上去的?