COBOL - Chế độ truy cập tệp

Cho đến nay, các kế hoạch tổ chức tệp đã được thảo luận. Đối với mỗi lược đồ tổ chức tệp, các chế độ truy cập khác nhau có thể được sử dụng. Sau đây là các loại chế độ truy cập tệp:

  • Truy cập tuần tự
  • Truy cập ngẫu nhiên
  • Quyền truy cập động

Các cú pháp trong mô-đun này, được đề cập cùng với các thuật ngữ tương ứng, chỉ đề cập đến cách sử dụng của chúng trong chương trình. Các chương trình hoàn chỉnh sử dụng các cú pháp này sẽ được thảo luận trong chương tiếp theo.

Truy cập tuần tự

Khi chế độ truy cập là tuần tự, phương pháp truy xuất bản ghi sẽ thay đổi theo tổ chức tệp đã chọn.

  • Đối với sequential files, các bản ghi được truy cập theo cùng thứ tự mà chúng đã được chèn vào.

  • Đối với indexed files, tham số được sử dụng để tìm nạp các bản ghi là các giá trị khóa bản ghi.

  • Đối với relative files, các khóa bản ghi tương đối được sử dụng để truy xuất các bản ghi.

Cú pháp

Sau đây là cú pháp của chế độ truy cập tuần tự:

ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name
   ORGANIZATION IS SEQUENTIAL
   ACCESS MODE IS SEQUENTIAL
	
	
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
   FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name
   ORGANIZATION IS INDEXED
   ACCESS MODE IS SEQUENTIAL
   RECORD KEY IS rec-key1
   ALTERNATE RECORD KEY IS rec-key2

		
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
   FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name
   ORGANIZATION IS RELATIVE
   ACCESS MODE IS SEQUENTIAL
   RELATIVE KEY IS rec-key1

Truy cập ngẫu nhiên

Khi chế độ truy cập là RANDOM, phương pháp truy xuất bản ghi sẽ thay đổi theo tổ chức tệp đã chọn.

  • Đối với indexed files, các bản ghi được truy cập theo giá trị được đặt trong trường khóa có thể là khóa chính hoặc khóa thay thế. Có thể có một hoặc nhiều chỉ mục thay thế.

  • Đối với relative files , các bản ghi được truy xuất thông qua các khóa bản ghi tương đối.

Cú pháp

Sau đây là cú pháp của chế độ truy cập ngẫu nhiên:

ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
   FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name
   ORGANIZATION IS INDEXED
   ACCESS MODE IS RANDOM
   RECORD KEY IS rec-key1
   ALTERNATE RECORD KEY IS rec-key2

		
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
   FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name
   ORGANIZATION IS RELATIVE
   ACCESS MODE IS RANDOM
   RELATIVE KEY IS rec-key1

Quyền truy cập động

Truy cập động hỗ trợ cả truy cập tuần tự và truy cập ngẫu nhiên trong cùng một chương trình. Với quyền truy cập động, một định nghĩa tệp được sử dụng để thực hiện cả xử lý tuần tự và xử lý ngẫu nhiên như truy cập một số bản ghi theo thứ tự tuần tự và các bản ghi khác bằng khóa của chúng.

Với các tệp tương đối và được lập chỉ mục, chế độ truy cập động cho phép bạn chuyển đổi qua lại giữa chế độ truy cập tuần tự và chế độ truy cập ngẫu nhiên trong khi đọc tệp bằng cách sử dụng cụm từ NEXT trên câu lệnh READ. Các chức năng NEXT và READ sẽ được thảo luận trong chương tiếp theo.

Cú pháp

Sau đây là cú pháp của chế độ truy cập động:

ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
   FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name
   ORGANIZATION IS SEQUENTIAL
   ACCESS MODE IS DYNAMIC
   RECORD KEY IS rec-key1
   ALTERNATE RECORD KEY IS rec-key2

		
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
   FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name
   ORGANIZATION IS RELATIVE
   ACCESS MODE IS DYNAMIC
   RELATIVE KEY IS rec-key1