2010-12-11 3 views
1

메인 프레임에서 실행될 특정 DB2 데이터베이스에 대해 Derby를 서브 세트로 사용하고 싶습니다.Derby와 DB2 사이의 이식 가능한 스키마

두 데이터베이스 사이에서 (적어도 DML 이상) 데이터베이스를 디자인 할 때 어떤 팁과 트릭을 제공합니까?

답변

3

귀하의 질문에 "대부분"으로 "가장 호환 됨"을 의미하는 것으로 추측하고 있습니까? 일반적으로, 나는 Derby와 올바른 선택을했다고 생각합니다. 제가 아는 유일한 데이터베이스입니다. DB2와 같은 강력한 타이핑을 시행합니다. Derby의 dual 테이블 버전이 SYSIBM.SYSDUMMY1이라는 것은 우연이 아닙니다.

DML 비 호환성 문제를 방지하는 가장 좋은 방법은 응용 프로그램에서 데이터베이스 추상화 방법을 사용하는 것입니다. Java를 사용하는 경우 Hibernate 또는 jOOQ과 같은 옵션을 제공하십시오. 데이터베이스 추상화가 옵션이 아니라면 자동 통합 테스트에서 많은 예제 쿼리를 작성하는 것이 좋습니다. 이 테스트에서는 Derby와 DB2 모두에 대해 동작하여 동작이 동일하게 수행되는지 확인합니다 (예 : 레코드 삽입, JOIN, 중첩 된 SELECTS 등을 사용하여 다시 읽음).

jOOQ의 개발자는 통합 테스트를 직접 작성하는 것이 특히 까다 롭고 더비와 DB2의 경우 매우 어렵다고 말할 수 있습니다! :-)

관련 문제