2012-05-15 2 views
0

일반적으로 doctrine을 사용하여 데이터베이스에서 엔티티를 가져 오는 경우 관계가 많은 경우 관련된 모든 엔티티를 실제 클래스로 가져 오므로 큰 JOIN 쿼리가 발생합니다.doctrine이 관련 엔티티를 가져 오지 못하도록합니다.

가끔은 실제 객체를 가져오고 모든 관련 엔티티가 아니라 해당 ID 만 가져오고 싶습니다.

doctrine에게 주요 엔티티를 가져오고 관계 만 남기도록 할 수 있습니까?

업데이트 : 죄송합니다, 버전을 놓치 셨습니다 : 이전 프로젝트에서 Doctrine 1.2를 사용하고 있습니다.

답변

1

기본적으로 Doctrine은 "지연로드"를 사용합니다. 액세스하려고하지 않으면 연결된 엔티티를 검색하지 않습니다.

주 엔터티의 ID 만 사용하면 연결된 엔터티를 검색하지 않습니다.

게으르다면 EXTRA_LAZYparam을 사용해보십시오.

+0

이상하게 들리지만, 프로파일 링은 뭔가 다른 것을 말합니다 ... 거대한 LEFT JOIN 쿼리를 만듭니다. –