2011-11-24 3 views
0

메신저 컴팩트 버전 4.0과 함께 nhibernate (버전 3.1.0)를 사용하고 일부 테이블에 대해 'many to one'관계가 있습니다.nhibernate 업데이트 스키마 : 관계가 제거되지 않았습니다.

잘 작동하면 제약 조건이 올바르게 검사됩니다.

는 내가 부모가 아이를 필요로 할 때 나는 오류가 없습니다 있도록 hbm.xml에 '= "무시"- 찾을 수 없음'을 추가하여 관계를 변경했습니다.

데이터베이스 'NHibernate.Tool.hbm2ddl.SchemaUpdate'를 사용하여 업데이트되지만 관계는 아직 거기?!

누구나 업데이트에서 이러한 관계를 제거하는 방법에 대해 알고 싶습니다.

감사합니다.

답변

0

기본적으로 SchemaUpdate는 데이터를 손실하지 않도록 모든 것을 처리합니다. 스키마에서 무언가를 삭제하는 것이 그와 같은 영향을 미칠 수 있습니다. 따라서 NHibernate는 그렇게하지 않을 것입니다.

그러나 SchemaExport를 사용하여 제약 조건이있는 모든 테이블을 다시 만들 수 있습니다.

+0

올바르지 않습니다. 테이블에서 모든 데이터를 삭제하고 업데이트를 다시 실행해도 데이터베이스에서 제약 조건이 제거되지 않습니다. 업데이트 할 때 빈 데이터베이스를 만들 때보 다 제약이 많으며 스키마 업데이트를 실행합니다. – user276426

+0

(내 새 버전에서 내가 '일부 발견하지 못했습니다 = 무시'플래그, 그래서 내가 덜 끔찍한의 업데이트보다 적은 제약 조건을 볼 thats) – user276426

관련 문제