我正在使用symfony + doctrine,我想用连接执行删除查询。请参阅下面的我正在使用的代码,该代码可以正常工作。
$sql = 'DELETE a
FROM a
INNER JOIN b ON a.b_id = b.id
WHERE b.c_id = :c_id';
$pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
$stmt = $pdo->prepare($sql);
$params = array('c_id' => $c_id);
$stmt->execute($params);
任何人都知道如何使用:
Doctrine_Core::getTable('a')
或者
Doctrine_Query::create()->delete()->from('a')
我也没有运气。
我真的不想在我的应用程序中使用原始SQL。
答案 0 :(得分:1)
这样的事情应该这样做
Doctrine_Query::create()
->delete('a a')
->innerJoin('a.b b')
->where('b.c_id = ?', $c_id)
->execute()