VSAM-명령

VSAM 명령은 VSAM 데이터 세트에서 특정 작업을 수행하는 데 사용됩니다. 다음은 가장 유용한 VSAM 명령입니다.

  • Alter
  • Repro
  • Listcat
  • Examine
  • Verify

바꾸다

ALTER 명령은 VSAM 파일 속성을 수정하는 데 사용됩니다. VSAM 클러스터 정의에서 언급 한 VSAM 파일의 속성을 변경할 수 있습니다. 다음은 속성을 변경하는 구문입니다-

ALTER  file-cluster-name [password] 
   [ADDVOLUMES(volume-serial)] 
   [BUFFERSPACE(size)] 
   [EMPTY / NOEMPTY] 
   [ERASE / NOERASE] 
   [FREESPACE(CI-percentage CA-percentage)] 
   [KEYS(length offset)] 
   [NEWNAME(new-name)] 
   [RECORDSIZE(average maximum)] 
   [REMOVEVOLUMES(volume-serial)] 
   [SCRATCH / NOSCRATCH] 
   [TO(date) / FOR(days)] 
   [UPGRADE / NOUPGRADE] 
   [CATALOG(catalog-name [password]]

위의 구문은 기존 VSAM 클러스터에서 변경할 수있는 매개 변수를 보여줍니다. 매개 변수 설명은 VSAM-클러스터 모듈에서 언급 한 것과 동일합니다.

다음 예는 ALTER 명령을 사용하여 여유 공간을 늘리고 볼륨을 더 추가하고 키를 변경하는 방법을 보여줍니다.

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1  EXEC PGM = IDCAMS
//SYSPRINT DD  SYSOUT = *
//SYSIN DD  *
   ALTER  MY.VSAM.KSDSFILE 
   [ADDVOLUMES(2)] 
   [FREESPACE(6 6)] 
   [KEYS(10 2)] 
/*

메인 프레임 서버에서 위의 JCL을 실행하는 경우. MAXCC = 0으로 실행해야하며 여유 공간, 볼륨 및 키를 변경합니다.

재현

REPRO 명령은 데이터를 VSAM 데이터 세트로로드하는 데 사용됩니다. 또한 한 VSAM 데이터 세트에서 다른 데이터 세트로 데이터를 복사하는 데 사용됩니다. 이 명령을 사용하여 순차 파일에서 VSAM 파일로 데이터를 복사 할 수 있습니다. IDCAMS 유틸리티는 REPRO 명령을 사용하여 데이터 세트를로드합니다.

REPRO INFILE(in-ddname) 
   OUTFILE(out-ddname)

위 구문에서 in-ddname은 레코드가있는 입력 데이터 세트의 DD 이름입니다. out-ddname은 입력 데이터 집합 레코드가 복사되는 출력 데이터 집합의 DD 이름입니다.

다음 예제는 한 데이터 세트에서 다른 VSAM 데이터 세트로 레코드를 복사하는 방법을 보여줍니다-

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1  EXEC PGM = IDCAMS
//IN  DD DSN = MY.VSAM.KSDSFILE,DISP = SHR
//OUT DD DSN = MY.VSAM1.KSDSFILE,DISP = SHR
//SYSPRINT DD  SYSOUT = *
//SYSIN DD  *
   REPRO INFILE(IN) 
      OUTFILE(OUT)
/*

메인 프레임 서버에서 위의 JCL을 실행하는 경우. MAXCC = 0으로 실행해야하며 MY.VSAM.KSDSFILE의 모든 레코드를 MY.VSAM1.KSDSFILE VSAM 파일로 복사합니다.

Listcat

LISTCAT 명령은 VSAM 데이터 세트의 카탈로그 세부 사항을 가져 오는 데 사용됩니다. Listcat 명령은 VSAM 데이터 세트에 대한 다음 정보를 제공합니다-

  • SMS 정보
  • RLS 정보
  • 볼륨 정보
  • 구 정보
  • 할당 정보
  • 데이터 세트 속성
LISTCAT ENTRY(vsam-file-name) ALL

위의 구문에서 vsam-file-name은 모든 정보가 필요한 VSAM 데이터 세트 이름입니다. 모든 카탈로그 세부 사항을 가져 오기 위해 ALL 키워드가 지정됩니다.

다음 예는 VSAM 데이터 세트에 대해 Listcat 명령을 사용하여 모든 세부 정보를 가져 오는 방법을 보여줍니다.

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1  EXEC PGM = IDCAMS
//SYSPRINT DD  SYSOUT = *
//SYSIN DD  *
   LISTCAT ENTRY(MY.VSAM.KSDSFILE) 
   ALL 
/*

메인 프레임 서버에서 위의 JCL을 실행하는 경우. MAXCC = 0으로 실행해야하며 MY.VSAM.KSDSFILE 데이터 세트에 대한 모든 카탈로그 세부 정보를 표시합니다.

조사

Examine 명령은 키 시퀀스 데이터 세트 클러스터의 구조적 무결성을 확인하는 데 사용됩니다. 인덱스 및 데이터 구성 요소를 확인하고 문제가 발견되면 오류 메시지가 스풀로 전송됩니다. IDCxxxxx 메시지를 확인할 수 있습니다.

EXAMINE NAME(vsam-ksds-name) -                                    
   INDEXTEST DATATEST -                  
   ERRORLIMIT(50)

위 구문에서 vsam-ksds-name은 VSAM 클러스터의 인덱스 및 데이터 부분을 검사해야하는 VSAM 데이터 세트 이름입니다.

다음 예제는 KSDS 데이터 셋의 Index와 Data 부분이 동기화되었는지 확인하는 방법을 보여줍니다.

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1  EXEC PGM = IDCAMS
//SYSPRINT DD  SYSOUT = *
//SYSIN DD  *
   EXAMINE NAME(MY.VSAM.KSDSFILE) -                                    
   INDEXTEST DATATEST -                  
   ERRORLIMIT(50)
/*

메인 프레임 서버에서 위의 JCL을 실행하는 경우. MAXCC = 0으로 실행되어야하며 스풀의 IDCxxxxx 메시지 중 하나에있는 VSAM 데이터 세트의 모든 문제를 표시합니다.

검증

확인 명령은 오류 발생 후 제대로 닫히지 않은 VSAM 파일을 확인하고 수정하는 데 사용됩니다. 이 명령은 올바른 데이터 끝 레코드를 파일에 추가합니다.

VERIFY DS(vsam-file-name)

위의 구문에서 vsam-file-name은 오류를 확인해야하는 VSAM 데이터 세트 이름입니다.

다음 예제는 VSAM 데이터 세트에서 오류를 확인하고 수정하는 방법을 보여줍니다.

//SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C
//STEP1  EXEC PGM = IDCAMS
//SYSPRINT DD  SYSOUT = *
//SYSIN DD  *
   VERIFY DS(MY.VSAM.KSDSFILE)                                  
/*

메인 프레임 서버에서 위의 JCL을 실행하는 경우. MAXCC = 0으로 실행해야하며 VSAM 데이터 세트의 오류를 수정합니다.