COLMAP 지원

COLMAP는 다음 시나리오를 지원합니다.

특정 열만 복제하는 것은 대상에 명시적으로 매핑해야 하는 열을 지정할 수 있는 매우 일반적인 사용 사례입니다.

예를 들어, 소스 테이블에 COL1, COL2, …, COL10 열이 있고 대상 테이블에 COL1 및 COL5만 생성하려는 경우 Replicat 매개변수 파일에서 다음과 유사한 매개변수를 추가할 수 있습니다.

MAP SRC.TABLE, TARGET TGT.TABLE, COLMAP(COL1 = COL1, COL5 = COL5);

다음 예제를 생각해 보겠습니다.

MAP SRC.TABLE, TARGET TGT.TABLE, COLMAP (USEDEFAULTS, EMPNAME = COL10);

이 예에서는 소스 테이블의 COL10 필드가 COLMAP를 사용하여 대상 테이블의 EMPNAME에 매핑되고, 다른 모든 열은 원래 이름을 유지합니다.

MAP SRC.REGION, TARGET TGT.EMPLOYEE, COLMAP (USEDEFAULTS, A001 = Å001);

이 예제에서 COLMAP는 특정(지원되지 않는) 문자가 포함된 A001 열의 이름을 Å001로 변경하는 데 사용됩니다.

COLMAP를 사용하여 열 이름을 바꿀 때 중요한 고려 사항은 향후 스키마 변경에 잠재적인 영향을 미칠 수 있습니다. 동일한 이름의 새 열(예: EMPNAME)이 소스 테이블에 추가되면 대상에서 중복 열을 생성하려고 시도하므로 Replicat 프로세스가 실패합니다.

추가 매핑 생성과 같은 임시해결책이 존재하는 동안 유지 관리가 복잡해질 수 있습니다. 따라서 COLMAP를 사용하여 열의 이름을 바꿀 때는 주의해야 합니다. 잠재적 충돌을 방지하고 원활한 복제를 보장하려면 적절한 이름으로 새 열을 추가하는 것이 좋습니다.

다음은 이러한 충돌을 해결하기 위한 가능한 임시해결책이지만, 이러한 솔루션에 의존하지 않는 것이 좋습니다. 대신 모든 데이터베이스에서 고유하고 호환되는 열 이름을 선택하여 시나리오를 완전히 피할 것을 권장합니다.

MAP SRC.TABLE, TARGET TGT.TABLE, COLMAP (USEDEFAULTS, EMPNAME = COL10, EMPNAME_NEW = EMPNAME);