2012-08-12 4 views
1

네이티브 쿼리를 수행하려고 할 때 Doctrine의 ResultSetMapping에 문제가 있습니다.Doctrine 2.0 결과 집합 매핑이 잘못 사용 되었습니까?

$sql = "SELECT id, thesis " 
    . "FROM activity p " 
    . "WHERE MATCH (thesis) AGAINST ('Gun') "; 

$rsm = new \Doctrine\ORM\Query\ResultSetMapping; 
$rsm->addEntityResult('activity\models\Entities\Opinion', 'p'); 
$rsm->addFieldResult('p', 'id', 'id'); 
$rsm->addFieldResult('p', 'thesis', 'thesis'); 

$query = $this->_em->createNativeQuery($sql, $rsm); 

$results = $query->getResult(); 

return $results; 

나는 무엇보다도, 그 세계 "총"이 데이터베이스에 항목이 때문에 SQL 측이 일을 찾는 있다는 사실을 알고, 내가 그것을 변경하는 경우 그것은 나에게 오류를 제공합니다 데이터베이스에없는 것.

그러면 결과 집합 코드가 남습니다. 오류가 발생하지 않지만 getResult()에 의해 반환 된 배열은 비어 있습니다. 이것은 제가 잘못 매핑 한 것으로 의심됩니다.

내가 무슨 문제인지 확인하기 위해 내가 할 수있는 것에 대해 의견이 있으십니까?

답변

1

쿼리가 4 자 미만인 경우에는 일치하지 않습니다. 문제는 SQL afterall : (

결과 집합이 완벽하게 작동합니다.