我想做到這一點(MySQL的)查詢:原則2:UPDATE表SET字段=場+ 1 WHERE ID = 1
UPDATE table SET field = field + 1 WHERE id = 1
什麼是做好上面的使用原則2實體的正確方法是什麼?
* 編輯
我正在尋找一個方式做$entity->incrementField()
,其執行上flush()
我想做到這一點(MySQL的)查詢:原則2:UPDATE表SET字段=場+ 1 WHERE ID = 1
UPDATE table SET field = field + 1 WHERE id = 1
什麼是做好上面的使用原則2實體的正確方法是什麼?
* 編輯
我正在尋找一個方式做$entity->incrementField()
,其執行上flush()
我似乎無法找到一種方法來使用實體本身。我現在已經通過使用定期的DQL來解決這個問題,它可以增加,並更新模型/實體的結果。
上述MySQL查詢它不會導致完全相同的查詢,但也許這是你在找什麼?
class MyEntity {
private $field;
public function incrementField() {
$this->field++;
}
}
然後它會嘗試保存$的確切值字段,而不是增加它(然後在此期間從另一個前端完成的任何增量將會丟失) –
'UPDATE table t SET t.field = t.field + 1 WHERE t.id = 1'? – biziclop
http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/dql-doctrine-query-language.html#update-queries – hakre