2008-09-22 5 views
5

프로젝트에서 NHibernate 2와 PostgreSQL을 사용하고 있습니다. SchemaExport 클래스는 데이터베이스에 DDL 스키마를 생성하는 훌륭한 작업을하지만 첫 번째 응용 프로그램까지 훌륭합니다.어떻게 NHibernate 매핑 파일에서 "마이그레이션"DDL을 생성 할 수 있습니까?

NHibernate 매핑 파일을 사용하여 "마이그레이션"DLL (DROP/CREATE 쌍 대신 "ALTER TABLE"의 배치)을 생성하는 방법이 있습니까?

+0

* 생성 - 교정 해주세요. – GEOCHET

+1

더 자세히 설명해주세요. –

답변

10

SchemaUpdate을 살펴보십시오. SchemaExport와 매우 유사한 API이지만 마이그레이션 만 생성합니다.

0

SchemaUpdate는 내 요구 사항에 매우 많은 답변을 제공하지만 여전히 여러 가지 문제가 있습니다. 예를 들어 기존 데이터와 충돌하지 않을지라도 기존 데이터베이스 열에 대한 새로운 제한 사항을 적용하는 것을 거부합니다.

SchemaUpdate를 약간 확장하거나, 실패 할 경우 손동치 형 마이그레이션 도구 중 하나 (예 : 레일스 1)로 전환 할 것입니다.