BIBLIOTHEQUE DE FONCTIONS LES FICHIERS 011100101101101001101011010010101010010010101001000001 FICHIER EXECUTABLE *. EXE 011100101101101001101011010010101010010010101001000001 BIBLIOTHEQUE DE FONCTIONS *. LIB *. DLL
FICHIER PERIPHERIQUE sous UNIX LES FICHIERS Convention de stage Passée entre les parties ci-après nommées Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla FICHIER TEXTE *. TXT FICHIER PERIPHERIQUE sous UNIX >lp 011100101101101001101011010010101010010010101001000001 FICHIER DE DONNEES *. MDB
LES FICHIERS DE DONNÉES Ils contiennent au minimum des RELATIONS/TABLES Attributs/Champs Noms des attributs/champs NUMEROCLI NOMCLI ADRESSECLI 15 DUPONT S.A NANTES 20 Etb. LABICHE PARIS 35 DUBOIS Jean 138 TOURS Enregistrements N-uplets /
TYPES DE FICHIERS de DONNEES Séquentiel Séquentiel indexé
FICHIER SÉQUENTIEL Les enregistrements sont traités comme des suites d’octets de taille fixe ou bien délimités. NUMEROCLI NOMCLI ADRESSECLI 15 DUPONT S.A NANTES 20 Etb. LABICHE PARIS 35 DUBOIS Jean 138 TOURS
FICHIER SEQUENTIEL Avantages Inconvénient Simplicité d’utilisation Standardisation des structures Optimisation espace de stockage Inconvénient Pour accéder à un enregistrement du fichier, tous les enregistrements situés avant doivent être lus en entier. C’est donc un traitement lent et lourd.
LECTURE DANS UN FICHIER SEQUENTIEL Commande : LIRE ENREGISTREMENT 4 Lecture enregistrement 1 1 DUPONT S.A NANTES 2 DUBOIS Jean NANTES Lecture enregistrement 2 Lecture enregistrement 3 3 DUBOIS Jean TOURS Lecture enregistrement 4 4 Etb. LABICHE PARIS
FICHIER SÉQUENTIEL INDEXÉ Un fichier d’index est ajouté et lié au fichier séquentiel NUMERO d’INDEX ADRESSE ENR. 1 3 2 4 ADRESSE ENR. NUMEROCLI NOMCLI ADRESSECLI 1 15 DUPONT S.A NANTES 2 20 Etb. LABICHE PARIS 3 35 DUBOIS Jean 4 138 TOURS
FICHIER SEQUENTIEL INDEXÉ Avantages Simplicité d’utilisation (comme pour le séquentiel) Standardisation des structures (comme pour le séquentiel) L’accès à un enregistrement du fichier peut se faire directement sans avoir à lire tous les enregistrements du fichier séquentiel. Pour cela, il faut posséder le numéro d’index correspondant. Inconvénient Beaucoup de programmation est nécessaire pour gérer l’indexation. Gaspillage de place notamment à cause de la redondance des clés présentes dans le fichier d’index ainsi que dans le séquentiel.
LE MODÈLE RELATIONNEL « MODÈLE » Façon d’organiser les données, de formaliser, d’analyser une situation à informatiser. « RELATIONNEL » Les objets manipulés dans ce modèle sont appelés des relations. POURQUOI le MODÈLE RELATIONNEL ? Ce modèle est directement exploitable dans les S.G.B.D.R., même par des utilisateurs non informaticiens. Il permet d’organiser et d’accéder aux données par des traitements informatisés.
DOMAINE Cardinal Ensemble de valeurs caractérisées par un nom Nombre d’éléments d’un domaine
5 Exemple DOMAINE : ELEVE Cardinal du DOMAINE «ELEVE» Alexandre Nadège Jérôme Nicolas Sandrine 5
Exercice A quels domaines appartiennent ces éléments (faire un schéma) Quel est le cardinal de chacun de ces domaines ? ÉLÉMENTS Linéaire Stéphane Magenta Windows Bleu Gilles DOMAINES TVA ELEVES COULEURS TYPES AMORTISSEMENT FILLES TAUX de TVA GARÇONS S.E. Marie-Claire 19,6 % Dégressif Linux 5,5% Epoc
SYNTAXE ÉLÈVES={« Marie-Claire », « Gilles », « Stéphane »};cardinal 3 TAUX de TVA={5.5, 19.6};cardinal 2 EXERCICE : En utilisant cette syntaxe, représentez les domaines de l’exercice précédent.
PRODUIT CARTÉSIEN TAUX de TVA CODE 5.5 19.6 2 3 1 4 (0,1) (0,2) (0,3) 2 3 1 4 (0,1) (0,2) (0,3) (0,4) (5.5,1) (5.5,2) (5.5,3) (5.5,4) (19.6,1) (19.6,2) (19.6,3) (19.6,4) PRODUIT CARTÉSIEN
SYNTAXE CODES X TAUX de TVA = {(0,1),(0,2),(0,3),(0,4),(5.5,1),(5.5,2),(5.5,3),(5.5,4), (19.6,1), (19.6,2), (19.6,3), (19.6,4)};cardinal 12
Exercice Écrivez les produits cartésiens des domaines suivants: ÉLÈVES et COULEURS CODES et COULEURS et S.E. Sachant que le produit cartésien de deux domaines donne des « doublets », que donnera le produit cartésien de trois domaines ? De N domaines ?
associant un seul CODE à chaque TAUX de TVA RELATION PRODUIT CARTÉSIEN (0,1) (0,2) (0,3) (0,4) (5.5,1) (5.5,2) (5.5,3) (5.5,4) (19.6,1) (19.6,2) (19.6,3) (19.6,4) CODE TAUX de TVA 1 2 5.5 3 19.6 (0,1) (5.5,2) (19.6,3) RELATION TAUXCODIF associant un seul CODE à chaque TAUX de TVA
2 ATTRIBUTS donc la relation est de DEGRÉ 2 RELATION et DEGRÉ Attributs CODE TAUX de TVA 1 2 5.5 3 19.6 2 ATTRIBUTS donc la relation est de DEGRÉ 2
REPRÉSENTATION/SYNTAXE d’une RELATION En extension En compréhension 19.6 3 5.5 2 1 TAUX de TVA CODE TAUXCODIF TAUXCODIF (CODE, TAUX de TVA)
RÈGLES du MODÈLE RELATIONNEL Cohérence Unicité Identifiant Clé primaire Clés secondaires Intégrité référentielle Clé étrangère Valeur nulle Contrainte d’entité Elles permettent de respecter les contraintes liées à l’analyse d’une situation à informatiser
COHÉRENCE 19.6 BLEU 5.5 2 1 TAUX de TVA CODE TAUXCODIF BLEU n’appartient pas au domaine dont la colonne CODE provient. Il n’est pas COHÉRENT de l’utiliser Toute valeur prise par un attribut doit appartenir au domaine sur lequel cet attribut est défini.
Tous les éléments d’une relation doivent être distincts UNICITÉ 19.6 3 1 TAUX de TVA CODE TAUXCODIF L’élément (1,0) figure deux fois, la règle d’UNICITÉ n’est pas respectée Tous les éléments d’une relation doivent être distincts
IDENTIFIANT TAUXCODIF 19.6 3 5.5 2 1 TAUX de TVA CODE TAUXCODIF Chaque éléments possède un code distinct. Chaque élément est donc identifiable sans possibilité d’erreur. CODE peut donc être l’IDENTIFIANT de la relation TAUXCODIF. Attribut ou ensemble d’attribut permettant de caractériser de manière unique chaque élément d’une relation.
Clé primaire Clés secondaires Identifiant minimum d’une relation Autres identifiants de la relation
Intégrité référentielle L’intégrité référentielle est respectée si un attribut présent dans une relation est aussi la clé primaire d’une autre relation. EXEMPLE : ÉLÈVE (numéro élève, nom élève, prénom élève, code classe) CLASSE (numéro classe, libellé classe, effectif classe) QUESTIONS : Quelle est la clé primaire de la relation ÉLÈVE ? Quelle est la clé primaire de la relation CLASSE ? Quels attributs sont susceptibles d’être des clés secondaires ?
Attribut ou ensemble d’attributs vérifiant l’intégrité référentielle Clé étrangère Dans l’exemple : ÉLÈVE (numéro élève, nom élève, prénom élève, code classe) CLASSE (code classe, libellé classe, effectif classe) Code classe est une clé étrangère Attribut ou ensemble d’attributs vérifiant l’intégrité référentielle
Valeur nulle Dans un modèle relationnel on admet la valeur nulle dans certains attributs. Ici, il n’existe aucun PRIX pour l’ARTICLE dont la référence est ZZZZ. REFART DESIGNATION PRIX CODETVA CATEGORIE AB10 Tapis de Chine 1500.00 2 IMPORT AB22 Tapis persan 1250.00 CD50 Chaîne HiFi 735.40 ZZZZ Article Z NULL DIVERS AA00 Cadeau 0.00 AB03 Carpette 150.00 SOLDES AB Tapis bleu ZZ01 Lot de tapis 500.00
Toute valeur participant à une clé primaire Contraintes d’entité Toute valeur participant à une clé primaire est NON NULLE. QUESTION : Pourquoi ?
Modèle en extension (les réponses au 2. et 3. ne figurent pas) EXERCICE 1 Soient les deux relations suivantes : ÉLÈVE ( Codélève, Nomélève, Adrélève ) PCPORTABLE( N°PC, DateAchat) Recopiez ce modèle en soulignant les clés primaires évidentes. Comment peut-on savoir quel élève possède un PC donné ? Adaptez la présentation du modèle pour que le 2. soit pris en compte. La date d’achat peut-t-elle être un identifiant pour les PC ? Pourquoi ? D’après le modèle représenté en extension, expliquez quelles sont les règles enfreintes. Modèle en extension (les réponses au 2. et 3. ne figurent pas) ÉLÈVE PCPORTABLE Codélève Nomélève Adrélève N°PC DateAchat 1 Durand Beauvais NULL 10/10/99 2 Roue de voiture Amiens Martin 4 12/10/99 Byart Doullens
EXERCICE 2 On souhaite créer une base de données concernant une entreprise. Une première étude a mis en évidence trois relations. Pour chacune des relations, la clé est soulignée. EMPLOYE (NumEmp, Nom, Prénom, Adresse, Téléphone, Qualification) SERVICE (NomService, Responsable, Téléphone) PROJET (NomProjet, DateDeb, DateFin, NumEmp) En considérant les possibilités offertes par ce schéma, répondre aux questions suivantes en justifiant vos réponses par rapport au modèle relationnel et par rapport à la sémantique intuitive des relations : Question 1 : Un employé peut il avoir plusieurs qualifications ? Question 2 : Un employé peut il faire plusieurs projets en même temps ? Question 3 : Une personne peut elle être responsable de plusieurs services ? Question 4 : Un service peut il avoir plusieurs responsables ?
EXERCICE 3 PRODUIT CARTESIEN BonneAmie nom prénom Durand Caroline Dupont Rose-Marie Cadeau Libellé prix collier 1000 roses 20