4
我想映射一個sql-view與Doctrine2。如何使用Doctrine 2管理VIEW?
這種觀點包含了一些統計數據,將顯示無需重寫生成視圖
我試圖映射像一個表的SQL,但在更新模式刪除該視圖,並創建一個表不是Temptable
我嘗試也nativeSQL將...
public function getMessages(\Project\Bundle\MyBundle\Entity\User $user) {
$rsm = new \Doctrine\ORM\Query\ResultSetMapping();
$rsm->addEntityResult('MessageCenter', 'v');
$rsm->addFieldResult('v', 'user_id', 'user_id');
$rsm->addFieldResult('v', 'tot', 'tot');
$rsm->addFieldResult('v', 'read', 'read');
$rsm->addFieldResult('v', 'to_read', 'to_read');
$rsm->addFieldResult('v', 'stored', 'stored');
$rsm->addFieldResult('v', 'spam', 'spam');
$q = "SELECT * FROM message_stats_view WHERE user_id = ?";
$rsm = new \Doctrine\ORM\Query\ResultSetMapping;
$query = $this->getEntityManager()->createNativeQuery($q, $rsm);
$query->setParameter(1, $user->getId());
echo $query->getSQL();
var_dump($query->execute());
exit;
}
我創建實體MessageCenter與getter和setter,但我的輸出是:
SELECT * FROM message_stats_view WHERE user_id = ?
array
empty
我嘗試使用NativeSQL ... – Ephraim
btw:在使用它之前,您正在覆蓋$ rsm .. – wolxXx