I file di Cobol


Gli archivi di Cobol sono memorizzati in file tradizionali e l’accesso avviene sempre a dei record.
Esiste la possibilità di usufruire di banche dati del tipo relazionale.


Organizzazione dei file


Abbiamo a disposizione tre tipi di organizzazione con tre metodi di accesso.

L’organizzazione può essere:

Bullet  SEQUENTIAL
Bullet  RELATIVE
Bullet  INDEXED




I file ad organizzazione SEQUENTIAL

Nel file ad organizzazione sequenziale i record vengono memorizzati uno dopo l’altro.
La lettura può avviene solo in questo ordine.
In genere trattasi di file di testo, per scambio dati come pure spool file (stampe su file).

Sono suddivisi un due tipi che differiscono tra loro nella tecnica di delimitazione del record.
In pratica si può dire che il file ad organizzazione:

LINE SEQUENTIAL può contenere solo caratteri formato testo.
BINARY SEQUENTIAL può contenere tutti i tipi di carattere.

I file line sequential sono gli unici a poter essere letti o scritti da un comune editore di testi.




I file ad organizzazione RELATIVE

Si tratta di un file ad accesso diretto, dove i record occupano una posizione ben precisa
determinata da una chiave relativa che parte dal numero uno.
L’accesso al record può avvenire indicando la sua posizione tramite questa chiave.
Questo tipo di organizzazione viene poco usata.




I file ad organizzazione INDEXED

Si tratta di un file associato ad un indice detto chiave o key che è un campo definito nel record.
Attraverso la chiave è possibile accedere direttamente al record associato.
La chiave deve essere definita come campo alfanumerico o come gruppo di campi.
Dato che il gruppo può contenere dei campi numerici, possiamo dire che in pratica è possibile utilizzare anche delle chiavi numeriche.
Sono ammessi più chiavi, quella primaria deve essere univoca.
Taluni compilatori suddividono i file indexed in due file distinti: uno contenente i dati ed un secondo contenente le chiavi.
Questo tipo di organizzazione è sicuramente la più utilizzata ed è un punto forte di Cobol.




Metodo di accesso ai file

A dipendenza dell’organizzazione possiamo avere fino a tre possibili metodi di accesso:

Bullet  SEQUENTIAL
Bullet  DYNAMIC
Bullet  RANDOM


Accesso tipo SEQUENTIAL

I record vengono letti in modo sequenziale, uno dopo l’altro.



Accesso tipo DYNAMIC

L’accesso dinamico avviene tramite almeno due operazioni.
Il comando START permette di posizionare l’indice in un punto ben definito nel file in base al valore della chiave.
I susseguenti comandi READ NEXT e READ PREVIOUS leggono il file in modo sequenziale
ascendente rispettivamente discendente di chiave.

Con il comando READ senza NEXT e senza PREVIOUS si accede al record in modo diretto secondo il contento della chiave.
Anche in questo caso sono necessarie di due operazioni distinte.
Un esempio:
metti numero cliente nella chiave (MOVE 123564 TO NOCLI) seguito dal comando leggi (READ).
In pratica si tratta di un accesso del tipo diretto detto random.

L’accesso in modo DYNAMIC è sicuramente il metodo utilizzato più frequentemente.



Accesso tipo RANDOM

L’accesso random ossia diretto avviene tramite due distinte operazioni.
La valorizzazione della chiave.
Il comando di lettura vero e proprio READ.
Senza ulteriori specificazioni con il comando READ si accede al file tramite la chiave primaria.
Qualora siano state definite delle chiavi secondarie (dette alternative) e si dovrà specificare la chiave di accesso da utilizzare.



Modi di accesso secondo organizzazione file




ORGANIZATION SEQUENTIAL  ORGANIZATION RELATIVE   ORGANIZATION INDEXED  
ACCESS SEQUENTIAL SI SI SI
ACCESS DYNAMIC NO SI SI
ACCESS RANDOM NO SI SI

Vai a inizio pagina

Pagina precedente Pagina precedente Pagina successiva  Pagina successiva