COLMAP 지원
COLMAP는 다음 시나리오를 지원합니다.
-
소스 열의 부분 집합만 대상 테이블에 복제합니다.
-
지원되지 않는 문자 또는 허용되는 최대 길이 초과와 같은 호환성 문제로 인해 소스 테이블에서 사용 가능한 열 이름과 다른 열 이름을 선택하십시오. 주:
COLMAP지원은CREATE TABLE에 대해서만 제공됩니다.COLMAP는ALTER TABLE사례에 대해 지원되지 않습니다.
특정 열만 복제하는 것은 대상에 명시적으로 매핑해야 하는 열을 지정할 수 있는 매우 일반적인 사용 사례입니다.
예를 들어, 소스 테이블에 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);