COBOL - 檔案組織



檔案組織指記錄在檔案中的組織方式。為了提高訪問記錄的效率,檔案有多種不同的組織方式。以下是檔案組織方案的型別:

  • 順序檔案組織
  • 索引順序檔案組織
  • 相對檔案組織

本模組中提到的語法及其各自的術語僅指它們在程式中的用法。“檔案處理動詞”章節將討論使用這些語法的完整程式。

順序檔案組織

順序檔案由按順序儲存和訪問的記錄組成。以下是順序檔案組織的關鍵屬性:

  • 記錄可以按順序讀取。要讀取第 10th 條記錄,必須先讀取之前的 9 條記錄。

  • 記錄按順序寫入。不能在中間插入新記錄。新記錄總是插入到檔案的末尾。

  • 將記錄放入順序檔案後,無法刪除、縮短或加長記錄。

  • 記錄的順序一旦插入,就永遠無法更改。

  • 可以更新記錄。如果新記錄長度與舊記錄長度相同,則可以覆蓋記錄。

  • 順序輸出檔案是列印的理想選擇。

語法

以下是順序檔案組織的語法:

INPUT-OUTPUT SECTION.
FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name-jcl
   ORGANIZATION IS SEQUENTIAL

索引順序檔案組織

索引順序檔案由可以順序訪問的記錄組成。也可以直接訪問。它包括兩部分:

  • 資料檔案包含按順序排列的記錄。

  • 索引檔案包含主鍵及其在資料檔案中的地址。

以下是順序檔案組織的關鍵屬性:

  • 就像在順序檔案組織中一樣,記錄可以按順序讀取。

  • 如果知道主鍵,則可以隨機訪問記錄。使用索引檔案獲取記錄的地址,然後從資料檔案中提取記錄。

  • 此檔案系統中維護著已排序的索引,該索引將鍵值與記錄在檔案中的位置相關聯。

  • 也可以建立備選索引來提取記錄。

語法

以下是索引順序檔案組織的語法:

INPUT-OUTPUT SECTION.
FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name-jcl
   ORGANIZATION IS INDEXED
   RECORD KEY IS primary-key
   ALTERNATE RECORD KEY IS rec-key

相對檔案組織

相對檔案由按其相對地址排序的記錄組成。以下是相對檔案組織的關鍵屬性:

  • 記錄可以像在順序檔案和索引檔案中一樣按順序讀取。

  • 可以使用相對鍵訪問記錄。相對鍵表示記錄相對於檔案起始地址的位置。

  • 可以使用相對鍵插入記錄。相對地址是使用相對鍵計算的。

  • 相對檔案提供對記錄的最快訪問。

  • 此檔案系統的主要缺點是,如果缺少一些中間記錄,它們也會佔用空間。

語法

以下是相對檔案組織的語法:

INPUT-OUTPUT SECTION.
FILE-CONTROL.
   SELECT file-name ASSIGN TO dd-name-jcl
   ORGANIZATION IS RELATIVE
   RELATIVE KEY IS rec-key
廣告
© . All rights reserved.