2011-12-16 3 views
0

교리에 없음 @Id 구성원에서 ManyToOne-관계를 만들 HistID가 '@Id'로 표시되어 있으므로 :내가 소스 다음 한

/** 
* @Id @Column(type="integer") 
* @var integer 
*/ 
protected $HistID; 

하지만 아이디와 아이디가 다른 필드없이 고유하지 않기 때문에 @Id로 HistID를 표시하고 싶지 않습니다. 비 ID 멤버에서 ManyToOne 관계를 만드는 방법은 무엇입니까? '@ Index1'과 같은 다른 가능성이 있습니까?

답변

1

잠시만 기다려주십시오. 논리적으로 ID가 무엇이되어야합니까?

HistID가 고유하지 않은 경우 다른 열과 함께 복합 키를 사용하여 고유하게 만들 수 있습니다.

복합 키는 Doctrine에서 완벽하게 지원되지만 권장하지 않습니다. 어쩌면 당신은 가짜 자동 증가 ID를 사용하는 것이 더 나을 것입니다 ...

어쨌든 시도한 적이 없지만 ID를 지정하지 않고 연결이 제대로 작동 할 것이라고 생각하지 않습니다.