Manuel Amos Professional  Sommaire  Index

Acces au Disque


Fichiers a acces direct

Amos Professional tire pleinement parti du second type de fichier utilise par l Amiga. Les fichiers a acces direct (random access) sont tres utiles car ils permettent au programmeur d acceder a des donnees stockees sur disque dans n importe quel ordre. Un fichier a acces direct est compose d unites de donnees appelees "enregistrements", et chaque enregistrement a son propre numero d identification. Chaque enregistrement peut etre divise en autant de sections plus petites que necessaire, chaque section devenant un "champ". Chaque champ contient une seule donnee.

La difference principale entre les fichiers sequentiels et ceux a acces direct est que vous devez indiquer a l avance a Amos Professional la taille maximale de chaque champ avant de pouvoir les utiliser.

Un champ peut contenir divers types de donnees : mot de passe, numero de facture, ou meme une citation litteraire. Supposons que vous souhaitiez creer un annuaire telephonique electronique. Vous pourriez definir les champs suivants, avec un nombre maximum de caracteres pour chacun :

Champ             Longueur max
NOM$              20
PRENOM$           15
TEL$              10

Une fois les champs planifies, vous pouvez definir la structure de votre base de donnees avec les commandes suivantes.

OPEN RANDOM
instruction : ouvrir un canal vers un fichier a acces direct
Open Random canal,nom_fichier$

Cette commande ouvre un canal vers un fichier a acces direct, comme ceci :

X> Open Random 1,"ADRESSE"

FIELD
instruction : definir une structure d enregistrement
Field canal,longueur1 As champ1$, longueur2 As champ2$

La commande FIELD doit etre utilisee immediatement apres OPEN RANDOM pour definir la structure d enregistrement utilisee pour ce fichier. Chaque enregistrement peut contenir jusqu a 65535 octets. Apres avoir specifie le numero de canal, donnez la longueur maximale du champ suivie de son nom, puis repetez pour chaque champ. Exemple :

X> Field 1,20 As NOM$,15 As PRENOM$,10 As TEL$
Retour    Suivant
10.02.14