2014-09-12 9 views
3

Dimension이라는 엔티티가 있습니다. ID, 너비 및 높이라는 세 가지 속성이 있습니다. ID가 기본 키입니다. 표에서 차원은 고유해야하므로 주어진 차원 (예 : 40x30)의 레코드가 하나만 있어야합니다. 설정해야 할 제약 조건은 무엇입니까? uniqueConstraints={@UniqueConstraint(name="dimension", columns={"width", "height"})}이 맞습니까?Doctrine에서 두 개의 열에 대한 고유 값

+2

'@ UniqueConstraint' 어노테이션을 사용하는 사람에게 단지 주석을 달아 주어야합니다. 주석을 가져와야합니다 :'Use Doctrine \ ORM \ Mapping \ UniqueConstraint; –

답변

12

the documentation,에서 @UniqueConstraint 주석은 엔티티 클래스 수준에 @Table 주석 내부에 사용됩니다. SchemaTool이 지정된 테이블 열에 대해 데이터베이스 고유 제한 조건을 생성하도록 힌트를 제공합니다. SchemaTool 스키마 생성 컨텍스트에서 의미는 입니다.

필수 속성 :

  • 이름 : 이름 색인의
  • 열 : 열 배열.

anwser은 YES

/** 
* @Entity 
* @Table(name="xxx",uniqueConstraints={@UniqueConstraint(name="dimension", columns={"width", "height"})}) 
*/ 
class Dimension 

일을 다음해야 다음이다.