我的代碼是:Symfony的學說更新查詢失敗
$query = $em->createQuery("UPDATE AppBundle:Project u SET u.name=1, u.key=?2, u.leader=?3 WHERE u.id = ?4");
$query->setParameter(1, $project->name);
$query->setParameter(2, $project->key);
$query->setParameter(3, $project->lead->name);
$query->setParameter(4, $project->id);
$result = $query->getResult();
現在,當我運行它,它給了我一個錯誤:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'key = 'EIAD', leader = 'fake.name' WHERE id = '12305'' at line 1
我找不出我在做什麼錯在這裏。 我甚至與對象更新嘗試這樣的:
$project->setname();
等
編輯:忘了說的代碼在自己創建的命令用!
顯示$ query-> getSql();的結果。 – svgrafov
我不認爲它會解決這個問題,但是你有'?'缺少'u.name = 1'。應該是'u.name =?1'。 –
@JakubMatczak忘了但沒有解決問題,同樣的錯誤仍然 – Nubcake