2011-09-27 4 views
1

NHibernate를 사용하여 DataModel을 매핑하고 있습니다. Unfotunatley DataBase에는 키/제약이 없기 때문에 일치하지 않는 데이터가 포함되어 있습니다. 현재지도 표 누락 된 데이터에 누락 된 일부 키가있는 m : n 매핑이 붙어 있습니다. 는 여기에 몇 가지 샘플 데이터입니다 :NHibernate와 일치하지 않는 데이터의 매핑

Table: Foo 
id Value 
0 A 
1 B 
2 C 

Table: Bar 
id Value 
10 X 
20 Y 
30 Z 

Table: Map 
foo_id bar_id amount 
    0  10  2 
    0  11  4 
    1  12  5 
    2  20  8 

내가 가져하고자하는 모든도 바있는 푸. (T는) SQL에서 나는 단지 조인을 사용합니다. 몇 가지 맵핑 (참조 + nullable 등)과 같은 맵핑이 있었지만 맵핑 테이블에 키가 있기 때문에 NHiernate는 엔티티를 기대하는 것 같습니다.

제안 사항?

+0

"누락 된"ID가 링크 테이블에있는 경우이를 삭제하고 제약 조건을 다시 저장하지 않는 이유는 무엇입니까? – mathieu

+0

@ mathieu 뷰를 구성하고 엔터티를 뷰에 매핑하십시오. –

+0

영향 위험이 매우 커서 데이터베이스 수정 작업을 수행 할 수 없습니다. – Jaster

답변

1

not-found="ignore" 속성 (Fluent에서 NotFound.Ignore())을 사용할 수 있습니다.

관련 문제