Oracle 게시자에 대한 데이터 형식 매핑 지정

적용 대상:SQL Server

이 항목에서는 SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server에서 Oracle 게시자에 대한 데이터 형식 매핑을 지정하는 방법에 대해 설명합니다. Oracle 게시자에 대해 기본 데이터 형식 매핑 집합이 제공되지만 지정된 게시에 대해 다른 매핑을 지정해야 할 수 있습니다.

항목 내용

SQL Server Management Studio 사용

아티클 속성 - <아티>클 대화 상자의 데이터 매핑 탭에서 데이터 형식 매핑을 지정합니다. 새 게시 마법사의 아티클 페이지와 게시 속성 - <게시> 대화 상자에서 사용할 수 있습니다. 마법사 사용 및 대화 상자 액세스에 대한 자세한 내용은 Oracle 데이터베이스에서 게시 만들기게시 속성 보기 및 수정을 참조하세요.

데이터 형식 매핑을 지정하려면

  1. 새 게시 마법사 또는 게시 속성 - <게시> 대화 상자의 아티클 페이지에서 표를 선택한 다음 아티클 속성을 클릭합니다.

  2. 강조 표시된 테이블 아티클의 속성 설정을 클릭합니다.

  3. 아티클 속성 - <아티클> 대화 상자의 데이터 매핑 탭에서 구독자 데이터 형식 열에서 매핑을 선택합니다.

    • 일부 데이터 형식의 경우 가능한 매핑이 하나만 있습니다. 이 경우 속성 표의 열은 읽기 전용입니다.

    • 일부 형식의 경우 둘 이상의 형식을 선택할 수 있습니다. 애플리케이션에 다른 매핑이 필요하지 않은 경우 기본 매핑을 사용하는 것이 좋습니다. 자세한 내용은 Oracle 게시자에 대한 데이터 형식 매핑을 참조 하세요.

  4. 확인을 선택합니다.

Transact-SQL 사용

복제 저장 프로시저를 사용하여 사용자 지정 데이터 형식 매핑을 프로그래밍 방식으로 지정할 수 있습니다. Microsoft SQL Server와 비 SQL Server DBMS(데이터베이스 관리 시스템) 간에 데이터 형식을 매핑할 때 사용되는 기본 매핑을 설정할 수도 있습니다. 자세한 내용은 Oracle 게시자에 대한 데이터 형식 매핑을 참조 하세요.

Oracle 게시에 속하는 아티클을 만들 때 사용자 지정 데이터 형식 매핑을 정의하려면

  1. 아직 없는 경우 Oracle 게시를 만듭니다.

  2. 배포자에서 sp_addarticle 실행합니다. @use_default_datatypes 0값을 지정합니다. 자세한 내용은 아티클 정의를 참조 하세요.

  3. 배포자에서 sp_helparticlecolumns 를 실행하여 게시된 아티클의 열에 대한 기존 매핑을 확인합니다.

  4. 배포자에서 sp_changearticlecolumndatatype 실행합니다. @publisher Oracle 게시자의 이름과 @publication, @article@column 지정하여 게시된 열을 정의합니다. 해당하는 경우 @type 매핑할 SQL Server 데이터 형식의 이름과 @length, @precision@scale 지정합니다.

  5. 배포자에서 sp_articleview 실행합니다. 그러면 Oracle 게시에서 스냅샷 생성하는 데 사용되는 뷰가 만들어집니다.

매핑을 데이터 형식의 기본 매핑으로 지정하려면

  1. (선택 사항) 모든 데이터베이스의 배포자에서 sp_getdefaultdatatypemapping 실행합니다. @source_dbms, @source_type, @destination_dbms, @destination_version을 지정하고 원본 DBMS를 식별하는 데 필요한 기타 매개 변수를 지정합니다. 대상 DBMS에서 현재 매핑된 데이터 형식에 대한 정보는 출력 매개 변수를 사용하여 반환됩니다.

  2. (선택 사항) 모든 데이터베이스의 배포자에서 sp_helpdatatypemap 실행합니다. 결과 집합을 필터링하는 데 필요한 @source_dbms 및 기타 매개 변수를 지정합니다. 결과 집합에서 원하는 매핑에 대한 mapping_id 값을 확인합니다.

  3. 모든 데이터베이스의 배포자에서 sp_setdefaultdatatypemapping 실행합니다.

    • 2단계에서 얻은 mapping_id 원하는 값을 알고 있는 경우 @mapping_id 지정합니다.

    • mapping_id 모르는 경우 기존 매핑을 식별하는 데 필요한 매개 변수 @source_dbms, @source_type, @destination_dbms, @destination_type 및 기타 매개 변수를 지정합니다.

지정된 Oracle 데이터 형식에 대한 유효한 데이터 형식을 찾으려면

  1. 모든 데이터베이스의 배포자에서 sp_helpdatatypemap 실행합니다. @source_dbms ORACLE과 결과 집합을 필터링하는 데 필요한 다른 매개 변수를 지정합니다.

예제(Transact-SQL)

다음은 Oracle 데이터 형식이 NUMBER인 열을 변경하여 기본 데이터 형식 부동 소수점 대신 SQL Server 데이터 형식 숫자(38,38)에 매핑되는 예제입니다.

EXEC sp_changearticlecolumndatatype 
    @publication = 'OraPublication', 
    @publisher = 'OraPublisher', 
    @article = 'OraArticle', 
    @column = 'OraArticleCol', 
    @type = 'numeric', 
    @scale = 38, 
    @precision = 38;
GO

이 예제 쿼리는 Oracle 9 데이터 형식 CHAR에 대한 기본 및 대체 매핑을 반환합니다.

EXEC sp_helpdatatypemap 
    @source_dbms = N'ORACLE', 
    @source_version = 9,
    @source_type = N'CHAR';
GO

이 예제 쿼리는 크기 조정 또는 정밀도 없이 지정된 경우 Oracle 9 데이터 형식 NUMBER 에 대한 기본 매핑을 반환합니다.

EXEC sp_helpdatatypemap 
    @source_dbms = N'ORACLE', 
    @source_version = 9,
    @source_type = N'NUMBER',
    @defaults_only = 1;
GO

참고 항목

Oracle 게시자에 대한 데이터 형식 매핑
다른 유형의 데이터베이스 복제
Replication System Stored Procedures Concepts
Oracle 게시자 구성