2013-08-18 33 views
1

有沒有辦法用ID和ID直接更新行?我只想要能夠更新表格行字段而不先查詢對象。我想這...學識ORM更新行ID

$id = 1; 
    $s = new Sandbox(); 
    $s->setId($id); 
    $s->setFname('moon'); 
    $e = $em->merge($s); 
    $em->flush($e); 

,並試圖做一個更新到數據庫中,但是,它失敗,因爲它試圖更新所有的不確定領域以及而我只是想更新FNAME領域。

感謝

+0

這裏有什麼用呢?如果用戶選擇了這個ID,那麼在更新之前檢查數據庫中是否存在這個ID是一個好主意(除非你能保證它在兩者之間沒有改變)。 – Flip

+0

是的,假設id存在,上面是一個例子。今天,我查詢了實體,設置了一堆東西,然後提出並刷新它。如果我知道該ID,我想消除查詢。 – tdbui22

+0

爲什麼你合併然後刷新? – Flip

回答

1
$id = 1; 
$s = $em->getReference('Sandbox', $id); 
$s->setFname('moon'); 
$em->persist($s); 
$em->flush($s);