IMS™
테이블 맵핑 마법사를 사용하여 기존의 DBD 및 카피북에서 새 테이블로 정보를 맵핑할 수 있습니다.
테이블을 작성하려는 DBD는 프로젝트의 IMS References
폴더에 나열되어 있어야 합니다.
IMS
데이터베이스를 맵핑하는 각 테이블은 데이터베이스에서 하나 이상의 세그먼트에 대한 경로를
나타냅니다. 경로는 리프 세그먼트 및 계층 구조의 루트 세그먼트에 대한 상위 체인보다 위에
있는 모든 세그먼트에 의해 정의됩니다. 선택한 리프 세그먼트는 DBD의 어떤 세그먼트도
가능합니다.
인덱스가 정의되지 않은 경우
IMS
DBD에 정의된 대로 실제 계층 뷰를 통해 액세스한다고 가정합니다. IMS
2차 인덱스를 사용하여 테이블을 맵핑하는 경우 인덱스가 루트 세그먼트에 없으면
IMS는
계층 구조를 변환합니다. 그러면 인덱스 세그먼트는 새
IMS
계층 구조의 암시적 루트가 됩니다. 정의된 테이블에 대한 모든 액세스는 선택한
2차 인덱스를 통해 수행되어야 합니다. 이 요구사항은
IMS
데이터베이스의 일관된 계층 뷰를 보장합니다.
위치 및 DBD 파일 지정 페이지
이 페이지를 사용하여
테이블을 작성할 데이터베이스 모델 및 스키마를 선택합니다. 또한 이 페이지를
사용하여 테이블의 기반이 되는 DBD를 선택할 수 있습니다.
- 데이터베이스 모델
- 테이블을 작성할 데이터베이스 모델의 경로 및 이름을
입력합니다. 예를 들어 프로젝트 이름이 MyProject이고 데이터베이스 모델 이름이
MyModel인 경우 \MyProject\MyModel을 입력합니다.
찾아보기를 누르면 데이터베이스 모델을 선택할 수 있습니다.
- DBD 파일
- 테이블에서 참조할
IMS
데이터베이스 정의(DBD) 이름의 짧은 ID를 입력합니다. DBD 이름은
IMS
테이블이 참조하는
IMS
논리 또는 실제 데이터베이스에 대한 DBDGEN 소스 정의에 있는 DBD문의 NAME 매개변수에
지정된 이름에 대응합니다. DBD 이름은
z/OS®
로드 모듈 이름 지정 규칙을 따릅니다.
- 스키마 이름
- 테이블을 작성할 스키마를 선택하거나 새 스키마를
입력합니다.
IMS
정보 및 테이블 사용법 지정 페이지
- DBD 이름
- 테이블에서 참조할
IMS
데이터베이스 정의(DBD) 이름을 표시합니다.
- DBD 유형
- 테이블에서 참조할
IMS
데이터베이스 정의(DBD) 이름을 표시합니다.
- 리프 세그먼트
- IMS
세그먼트 정의 이름을 선택합니다. IMS
데이터에 맵핑하는 각 테이블은 하나 이상의 세그먼트에 대한 경로를
나타냅니다. 경로는 리프 세그먼트 및 계층 구조의 루트 세그먼트에 대한 상위 체인보다 위에
있는 모든 세그먼트에 의해 정의됩니다. 선택한 리프 세그먼트는 DBD의 어떤 세그먼트도
가능합니다.
- 2차 인덱스를 포함하지 않는 논리 또는 실제 데이터베이스의 경우 리프 세그먼트는
루트 세그먼트의 직접 종속된 세그먼트여야 합니다. 리프 세그먼트에서 루트 세그먼트까지
상위 체인(PARENT= DBD에서 SEGM문의 매개변수)에 따라 계층 구조를 판별합니다.
- 2차 인덱스를 포함하고 2차 데이터 구조로 구성된 데이터베이스의 경우 계층 구조는
다음과 같은 2개의 세그먼트 경로에 따라 판별합니다.
- PARENT 매개변수에서 명시적으로 정의된 경로
- 2차 인덱스에서 작성한 2차 데이터 구조에서 내재적으로 정의된 경로
- 인덱스 루트
- 선택사항: 다음 두 오브젝트 중 하나의 이름을 입력하십시오.
- DBD로 식별되는
IMS
데이터베이스의 실제 또는 논리 루트 세그먼트.
- DBD에 존재하는 2차 인덱스 정의에 의해 작성되는 2차 데이터 구조로 구성된
IMS
데이터베이스의 인지된 루트 세그먼트.
디폴트 인덱스 루트는 DBD가
참조하는 실제 또는 논리 데이터베이스의 루트 세그먼트입니다.
- 테이블 이름
- 논리 테이블 이름을 입력합니다. 디폴트로 마법사는 리프 세그먼트 이름을
테이블 이름으로 지정합니다. 디폴트값은 변경할 수 있습니다.
- IMS 서브시스템
- 선택사항: ODBA 인터페이스가 DBD로 식별되는
IMS
데이터베이스에 액세스하는 데 사용하는
IMS
서브시스템에 대한 4자로 된 이름을 입력하십시오.
IMS
서브시스템 ID는 서버가 RRS 2단계 커미트 환경에서 동작 중일 때만 사용됩니다.
IMS
서브시스템 ID는 서브시스템 ID에 대한
IMS
이름 지정 규칙을 따릅니다.
IMS
서브시스템 ID는 Classic 페더레이션에서
IMS
데이터에 액세스하거나 이 데이터를 갱신할 때 사용하는 목표 온라인
IMS
서브시스템의 시스템 정의에 있는 IMSCTRL 매크로의 IMSID 매개변수에 지정된 값에
대응해야 합니다.
IMS
서브시스템 ID 값은 다른 양식으로
IMS
데이터에 액세스하거나(DRA 또는 BMP/DBB/DLI) 변경 캡처 시 테이블 맵핑을 사용하는 경우에는
무시됩니다.
- 표준 PSB 이름
- 선택사항: DBD로 식별되는
IMS
데이터베이스에 액세스하도록 예정된 PSB 이름을 입력합니다. 이 이름은 DRA 또는 ODBA 인터페이스를
사용하여 IMS
데이터에 액세스하는 경우에 사용됩니다. 표준 PSB는 액세스할
IMS
온라인 시스템에 정의된 PSB 정의에 대응합니다. 또한 PSB는 소스
IMS
서브시스템의 활성 ACB 라이브러리와 동일한 이름의 PDS 구성원에 대응합니다.
표준 PSB 이름은
z/OS
로드 모듈 이름 지정 규칙을 따릅니다.
PSBGEN 키워드 값이 "P/LI"인 PSB는 지정할 수 없습니다.
- PSB 이름 조인
- 선택사항: DBD로 식별되는
IMS
데이터베이스에 액세스하도록 예정된 PSB 이름을 입력합니다. 이 이름은 DRA 또는 ODBA 인터페이스를
사용하여 IMS
데이터에 액세스하는 경우에 사용됩니다. JOIN PSB는 액세스할
IMS
온라인 시스템에 정의된 PSB 정의에 대응합니다. 또한 PSB는 목표
IMS
서브시스템의 활성 ACB 라이브러리와 동일한 이름 아래에 있는 PDS 구성원에 대응합니다.
JOIN PSB 이름은
z/OS
로드 모듈 이름 지정 규칙을 따릅니다. 다중
IMS
테이블을 참조하는 JOIN 술어를 포함하는 SQL SELECT문을 실행할 때 JOIN PSB가 스케줄됩니다.
이때 이 테이블은 JOIN에서 참조하는 첫 번째 테이블입니다.
PSBGEN 키워드 값이 "P/LI"인 PSB는 지정할 수 없습니다.
- 테이블 사용법 선택
- 테이블을 사용하는 방법을 지정합니다.
- 쿼리
- Classic 페더레이션에서 데이터를 검색할 때 테이블을 사용하도록
지정합니다.
- 갱신
- Classic 페더레이션에서 데이터를 갱신할 때 테이블을 사용하도록
지정합니다.
- 변경 캡처
- 테이블을 발행 또는 서브스크립션에 대한 소스 테이블로
사용하도록 지정합니다.
- 뷰 작성
- 이 제어를 사용하여 테이블에서 뷰를 작성할 것인지 여부를 표시합니다.
- 아니오
- 뷰를 작성하지 않도록 지정합니다.
- 예
- 테이블에서 뷰를 작성하도록 지정합니다. 이 옵션을 사용하면 Classic 페더레이션에서
뷰를 작성할 수 있습니다. 뷰를 사용하여 레코드 유형 및 행과 컬럼을 필터링할 수 있습니다.
- 예(변경 캡처인 경우)
- 테이블에서 뷰를 작성하도록 지정합니다. 이 옵션을 사용하면 변경 캡처에 대한 뷰를 작성할 수
있습니다. 뷰를 사용하여 레코드 유형 및 행을 필터링할 수 있습니다. 뷰는 테이블의
모든 컬럼을 참조해야 합니다.
- 주석
- 테이블과 연관시키려는 주석(예: 테이블 작성 날짜 및 시간과
해당 테이블에 포함된 레코드)을 입력합니다.
PCB 선택
이 페이지를 사용하여 Classic 페더레이션에서
IMS
데이터베이스에 액세스하도록 PCB를 선택할 때 사용할 수 있는 메소드를 지정합니다. 이 페이지는
Classic 페더레이션에만 적용됩니다.
- PCB 선택 메소드 및 PCB 선택 기준
- 검증
- 검증에 의한 PCB 선택 시 쿼리 프로세서는 DL/I 호출을 발행하여 선택한 PCB가
이 테이블에 대한 데이터베이스 경로에 액세스할 수 있도록 검증합니다. 또한 PCB 검증 시
XDFLD에 맵핑하는 컬럼이 WHERE절에 지정된 경우 올바른 PROCSEQ를 지정해야 합니다.
이는 처리할 PCB를 선택하는 데 쿼리 프로세서가 사용하는 디폴트 메소드입니다.
- 접두부
- IMS
데이터베이스에 액세스하거나 이를 갱신할 때 사용하는 PCB를 식별하기 위해
사용할 접두부를 제공함을 표시합니다.
- PCB 접두부
- 소스 IMS
데이터베이스에 액세스하거나 이를 갱신할 때 사용할 수 있는 PSB에서 하나 이상의
PCB에 대해 1 - 7자로 된 이름을 입력합니다. PCB 접두부는 PSB에서 액세스하거나 갱신할 PCB에
지정된 이름의 처음 n자에 해당합니다. 여기서 n은
PCB 접두부 길이입니다. PCB 이름은 PCB 명령문의 레이블 또는 PCB 매크로 명령문의 PCBNAME
매개변수로 PSB 소스 정의에서 지정할 수 있습니다. PCB 접두부는
IMS
PCBNAME 이름 지정 규칙을 따릅니다.
- 이름
- Classic 페더레이션에서 이 테이블에 대한
IMS
데이터베이스에 액세스할 때 사용할 수 있는 PCB 이름을 최대 5개까지 지정합니다. 이 테이블이
SQL문에서 두 번 이상 참조되거나 동일한 PCB 이름이 2개 이상의 테이블과 연관되어 있고
이러한 추가 테이블이 단일 SQL문에서 참조되는 경우 여러 개의 이름이 필요합니다.
- PCB 이름(1 - 5)
- PCB 이름을 입력합니다.
- 번호
- Classic 페더레이션에서 이 테이블에 대한
IMS
데이터베이스에 액세스할 때 사용할 수 있는 PCB 번호를 최대 10개까지 지정합니다. 이 테이블이
SQL문에서 두 번 이상 참조되거나 다음 3개 조건이 참인 경우
여러 개의 번호를 지정해야 합니다.
- 동일한 PSB가 2개 이상의 테이블과 연관되어 있습니다.
- PSB의 PCB는 테이블이 액세스하는 세그먼트에 대해 민감하게 반응합니다.
- 이 테이블에 동일한 PCB 서수가 지정되어 있고 이러한 추가 테이블이 단일 SQL문에서
참조됩니다.
최대 10까지 PCB 번호를 지정할 수 있습니다. 이러한 PCB 번호는
임의의 순서대로 나열될 수 있으며
IMS
데이터베이스에 액세스할 때 PCB를 사용할 수 있는지 여부를 판별할 때 PSB를 확인하는
순서대로 표시할 수 있습니다. - PCB 범위(1 - 10)
- PCB 번호 범위를 지정합니다.
요약 페이지
이 페이지를 사용하여 DDL을 생성 및 실행할 때
작성한 테이블의 컬럼을 확인하십시오.
테이블에서 뷰를 작성한 경우
Classic Data Architect가 이 뷰의 기반으로 사용할 SELECT문을 볼 수
있습니다.
완료를 누르면 테이블의 모델을 생성할 수 있습니다.