2013-04-15 3 views
0

나는 별도의 스키마를 사용하여 내 db2 데이터베이스를 처리하기 위해 hibernate-annotation (entitymanager)을 사용하고있다.DB2의 다른 스키마를 사용하는 Hibernate Many-To-One

내 기본 스키마를 "mainschema"라고합니다. 파일 업로드를위한 테이블이 있습니다.

그럼 다른 스키마 (schema1, schema2, schema3, schemaN)가 있습니다.

"mainschema"의 파일 테이블을 참조하려면 schemaN의 many-to-one 관계를 어떻게 알 수 있습니까? 연결을 열면 어떤 스키마를 사용해야하는지 알 수 있습니다. 그러나 many-to-one은 여전히 ​​그 스키마를 사용하고 있으며 fileupload 테이블은 "mainschema"에서만 사용할 수 있습니다.

감사합니다.

편집 :

주요 스키마를 명시 적으로 사용하여 내 파일 업로드 최대 절전 콩 : 스키마가 설정되지 않은 : 그럼 여기에서 봐 가지고, 모든 클라이언트에 대해 하나의 스키마를 가지고

@Entity 
@Table(name="DOKUMENT", schema="mainschema") 

콩. 대신 연결이 설정된 시간대에 설정됩니다.

@Entity 
@Table(name="SOMETABLE") 

이 테이블 "SOMETABLE"은 모든 클라이언트의 모든 스키마에 존재합니다. 그것이 대일

@Many-To-One 
@JoinColumn(name="DOKUMENT_ID") 
public Dokument getDokument() { return dokument } 
public void setDokument() { this.dokument = dokument } 

질문과 dokument 엔티티를 지칭 폐쇄 될 수있다. 최대 절전 모드는 여전히 자동으로 "mainschema"를 사용하기 때문에 변경없이 작동합니다.

+0

모든 Schema1을위한 동일해야 당신을 도와줍니다 MainSchema에 일대

@Entity public class SchemaN{ @OneToMany(targetEntity=MainSchema.class, mappedBy="pk_SchemaN") private List<MainSchema> ms; ... } @Entity public class MainSchema{ @ManyToOne @JoinColumn(name="FK_MainSchema") private SchemaN pk_schemaN; ... } 

희망을 SchemaN를 매핑하는 방법입니다 대일 관계에서이다 스키마 1에 대한 mainschema (one) ... scheman (many)? 또는 그 반대의 주위에? –

+0

다른 방법으로 schemaN에서 mainschema로 이동합니다. – Nils

+0

내 편집 좀 봐. 하지만 귀하의 awnser에 대한 감사합니다 – Nils

답변

1

이이 그것이 N

+0

나는 그것을 밖으로 확인합니다 :) 감사합니다 Logged – Nils