IntroTables
Clef primaireRequêtes simples
Requêtes avancéesRelations
FormulairesEtats
TRAITEMENT INFORMATIQUE DES DONNEES
(ACCESS)
O. HERMAN
Infoescg.sytes.net
INTRODUCTION
• QU’EST-CE QU’UN FICHIER• QU’EST-CE QU’UN REPERTOIRE (INTERET?)• QU’EST-CE QUE LE LECTEUR C:• COMMENT Y ACCEDER?• COMMENT COPIER UN FICHIER SUR UNE
DISQUETTE?• QU’EST-CE QUE ACCESS?• QU’EST-CE QUE UNE BASE DE DONNEES?• A QUOI SERT-ELLE? • A QUOI RESSEMBLE-T-ELLE?• DONNEZ DES EXEMPLES DE BASE DE DONNEES?
STRUCTURE D’UNE BASE DE DONNEES
Arthur Martin 02 660 41 25 Vincent Timme 02 660 21 20 Christian Dupont 02 734 65 54 Anne Laurencin 02 757 54 55 Jean claude Duss 02 758 55 54 Laure Loger 02 255 25 25 Pascal Florin 02 254 25 24 Marie Polbel 02 555 01 41
STRUCTURE D’UNE BASE DE DONNEES
Arthur Martin 02 660 41 25 Vincent Timme 02 660 21 20 Christian Dupont 02 734 65 54 Anne Laurencin 02 757 54 55 Jean claude Duss 02 758 55 54 Laure Loger 02 255 25 25 Pascal Florin 02 254 25 24 Marie Polbel 02 555 01 41
STRUCTURE D’UNE BASE DE DONNEES
Arthur Martin 02 660 41 25 Vincent Timme 02 660 21 20 Christian Dupont 02 734 65 54 Anne Laurencin 02 757 54 55 Jean claude Duss 02 758 55 54 Laure Loger 02 255 25 25 Pascal Florin 02 254 25 24 Marie Polbel 02 555 01 41
CHAMPS
STRUCTURE D’UNE BASE DE DONNEES
Arthur Martin 02 660 41 25 Vincent Timme 02 660 21 20 Christian Dupont 02 734 65 54 Anne Laurencin 02 757 54 55 Jean claude Duss 02 758 55 54 Laure Loger 02 255 25 25 Pascal Florin 02 254 25 24 Marie Polbel 02 555 01 41
CHAMPS
ENREGISTREMNETS
TYPES DE DONNEES DE BASE
• TEXTE
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE:
- UNIQUEMENT DES CHIFFRES
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE:
- UNIQUEMENT DES CHIFFRES
- MAXIMUM UNE VIRGULE.
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE:
- UNIQUEMENT DES CHIFFRES
- MAXIMUM UNE VIRGULE.
- PAS D’ESPACES.
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE:
- UNIQUEMENT DES CHIFFRES
- MAXIMUM UNE VIRGULE.
- PAS D’ESPACES.
- REPRESENTE UNE VALEUR NUMERIQUE
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE:
- UNIQUEMENT DES CHIFFRES
- MAXIMUM UNE VIRGULE.
- PAS D’ESPACES.
- REPRESENTE UNE VALEUR NUMERIQUE
• BINAIRE
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE:
- UNIQUEMENT DES CHIFFRES
- MAXIMUM UNE VIRGULE.
- PAS D’ESPACES.
- REPRESENTE UNE VALEUR NUMERIQUE
• BINAIRE: OUI/NON
TYPES DE DONNEES DE BASE
• TEXTE: CHIFFRES ET LETTRES
• NUMERIQUE:
- UNIQUEMENT DES CHIFFRES
- MAXIMUM UNE VIRGULE.
- PAS D’ESPACES.
- REPRESENTE UNE VALEUR NUMERIQUE
• BINAIRE: OUI/NON
PRESENTATION D’ACCESS
• LES TABLES
• LES REQUETES
• LES FORMULAIRES
• LES ETATS
• (LES MACROS)
• (LES MODULES)
• (PAGES WEB)
CRÉER UNE TABLE
TABLE REPERTOIRE
NOMADRESSETEL
EN MODE CREATION
EXERCICES
En mode création, créez une table « TableArticles » avec les champs suivants:
Marque: TexteModèle: TextePrix: Numérique
En mode création, créez une table « TablePaiements » avec les champs suivants:
Nom du client: TexteSomme payée: Numérique
LIMITER LA TAILLE DES TABLES
UTILITE:
LIMITER LA TAILLE DE LA BD
-> SUPPORT DE STOCKAGE
-> RAPIDITE DE TRANSMISSION
ACCELERER LE TRAITEMENT DE LA BD
METHODE: - BIEN CHOISIR SON TYPE DE DONNES- DEFINIR DES PROPRIETES + PRECISES
BIEN CHOISIR SON TYPE DE DONNES
1 BIT= PLUS PETITE UNITE DE STOCKAGE D’UN ORDINATEUR
VALEURS: 1 OU 0
1 OCTET = 1 BYTE = 8 BITS = 1 CARACTERE
1 BIT <> 1 BYTE
BIEN CHOISIR SON TYPE DE DONNES
1 BIT=1 BIT
1 OCTET = 8 BITS
1 KILO OCTET (Ko) ~ 1 000 OCTETS
1 MEGA OCTET (Mo) ~ 1 000 000 OCTETS
1 GIGA OCTET (Go) ~ 1 000 000 000 OCTETS
(1 Ko= 1024 Octets)
(1 Mo = 1024x1024 Octets)
…
SUPPORTS DE STOCKAGE
DISQUETTE: 1,44 Mo
CD ROM: 640-800 Mo
ZIP: 100-250 Mo
DVD: 4,7 – 7,2 Go
DISQUE DUR: TRES VARIABLE
LE TYPE BINAIRE
UN BIT EN MEMOIRE ET DANS LA DB. UNIQUEMENT 2 VALEURS POSSIBLES:
- OUI/NON- VRAI/FAUX- GARCON/FILLE
LE TYPE NUMERIQUE
OCTET 1 OCTET 0 à 255
ENTIER 2 OCTETS -32767 à +32767
ENTIER LONG
(PAR DEFAUT)
4 OCTETS -2147.483.648 à +2.147.483.647
REEL SIMPLE 8 OCTETS -3,4X1038 à +3,4X1038
REEL DOUBLE 16 OCTETS -1,797X10308 à +1,797X10308
LES CHAMPS TEXTES
50 CARACTERES
A LIMITER!!!!
LIMITER LA BD: ACCELERE LA VITESSE DE TRANSMISSION
VITESSE D’UN MODEM TELPHONIQUE: 55KBps
VITESSE D’UN MODEM CABLE: 765 KBps
VITESSE D’UN MODEM ADSL: 3MBps
EXERCICES
1. SOIT UNE DB DE TYPE ANNUAIRE TELEPHONIQUE:- NOM: 25 CARACTERES- PRENOM: 25 CARACTERES- ADRESSE: 100 CARACTERES- NUMERO DE TELEPHONE: 9 CARACTERESEN ADMETTANT QUE LA ZONE 02 COMPRENNE 1.000.000 D’ABONNES, PEUT-ON LES STOCKER SUR UNE DISQUETTE ZIP DE 100 Mo. SI OUI? QUEL POURCENTAGE DE LA DISQUETTE AURA-T-ON BESOIN? SINON QUELLE TAILLE MINIMUM DEVRAIT AVOIR LE SUPPORT DE STOCKAGE
2. UNE BASE DE DONNEES A 50.000 ENREGISTREMENTS DE 300 OCTETS. COMBIEN DE TEMPS FAUDRA-T-IL POUR LA TELECHARGER SUR INTERNET SI ON DISPOSE D’UNE CONNEXION DE 55 KBPS EN SUPPOSANT QUE LA VITESSE DE TELECHARGEMENT SOIT CONSTANTE ET MAXIMALE
Une base de données créée avec Access sans avoir limité la taille des champs reprend les champs suivants:
Numéro Elève: NumériqueNom: TextePrenom: TexteAge: NumériqueRue: TexteNuméro: TexteCode Postal: TexteCommune: TexteCombien d’élèves peut-on stocker sur une disquette de 1,44 Mo?Définissez plus précisément vos champs et faites le même calcul.
Combien d’élèves pouvez-vous maintenant stocker?
EXERCICES
EXERCICESNuméro Elève: Numérique 4 4
Nom: Texte 50 20
Prenom: Texte 50 15
Age: Numérique 4 1
Rue: Texte 50 20
Numéro: Texte 50 6
Code Postal: Texte 50 7
Commune: Texte 50 20
Total: 308 93
1440000 4675 15483
LA CLEF PRIMAIRE
LA CLEF PRIMAIRE PERMET D’IDENTIFIER DE MANIERE UNIQUE ET SANS AMBIGUITE CHACUN DES ENREGISTREMENTS.
DUBOIS JEAN
DUBOIS PATRICK
DUBOIS PASCAL
DUBOIS PASCAL
AUTRES TYPES DE DONNEES
• DATE/HEURE
AUTRES TYPES DE DONNEES
• DATE/HEURE• MONETAIRE
AUTRES TYPES DE DONNEES
• DATE/HEURE• MONETAIRE• NUMERO AUTO
AUTRES TYPES DE DONNEES
• DATE/HEURE• MONETAIRE• NUMERO AUTO• MEMO
AUTRES TYPES DE DONNEES
• DATE/HEURE• MONETAIRE• NUMERO AUTO• MEMO• AUTRES
AUTRES TYPES DE DONNEES
• DATE/HEURE• MONETAIRE• NUMERO AUTO• MEMO• AUTRES• OBJET OLE
AUTRES TYPES DE DONNEES
• DATE/HEURE• MONETAIRE• NUMERO AUTO• MEMO• AUTRES• OBJET OLE• LIEN HYPERTEXTE
CREATION DE TABLE DETAILLEE
TABLE REPERTOIRE
NUMERO: NUMERO AUTONOM: 20 CARACTERESADRESSE:30 CARACTERESTEL: 17 CARACTERESDATE DE NAISSANCE: DATE/HEUREHOMME: OUI/NON
EXERCICES• En mode création, créez une table "TableCommandes" • commandes reprenant les champs suivants:• NumeroCommande Numerotation automatique• Date Date/heure• NomClient Texte de 20 caractères• Adresse Texte de 30 caractères• CodePostal Numérique entier long• Etage Numérique octet • Livraison Oui/non
• En mode création: Créez la table suivante: " TableCP "• CodePostal Entier (Clef primaire)• Localité Texte de 25 caractères
• Exercices: En mode création, créez une table: "TableArticles"
• NumeroArticle: Numérotation automatique
• Article Texte de 20 caractères• Prix Monétaire
• En mode création créez une table: "TableClients"• NumeroCl: Numérotation automatique• Nom Texte de 20 caractères• Adresse Texte de 30 caractères• CodePostal Numérique Entier
Créez une table « cheptel bovin » avec les champs suivants:
- Nom de l’animal- Numéro de tatouage- Age- Vacciné (définira si l’animal a été
vacciné )- Historique (reprenant toutes sortes de
données concernant la santé et l’historique de l’animal
- Date de naissance
Définissez de façon la plus judicieuse possible le type et la taille de chaque champ ainsi que la clef primaire.
REQUETES
FICHIER « DEMOREQUETES.MDB »
Quels sont les noms
Quels sont les noms (triés)
Quels personnes ont plus de 30 ans= : Egal > : Supérieur< : Inférieur <> : Différent <= : Inf ou égal >= : Sup. ou égal
Quelles sont les personnes ayant une voiture
Quelles sont les noms des personnes ayant une voiture et moins de 30 ans
Quel est le prénom de Mr Duss
Quels sont les noms après Martin dans l’alphabet
Quelles sont les personnes de 20 et de 40 ans
Poser une question Utilisation des [ ]
Calcul de champs (ex: Age+5)
LES REQUETES AVANCEES
Totaux:
Compter
Moyenne
Somme
Min
Max
Premier
Dernier
Regroupement
REQUETES
FICHIER « DEMOREQUETES.MDB »
Quel age a la personne la plus jeune?
Quel age a la personne la plus âgée?
Quelle est la première personne dans la table?
Quelle est la moyenne des ages?
Quelle est la moyenne des ages des personnes possédant une voiture?
Quelle est la moyenne des ages des personnes possédant une voiture et celle des personnes ne possédant pas de voiture?
EXERCICES DE REQUETES
• Exercices: TableCommandes (3)– Afficher le nom des personnes Habitant au code postal 1140
– Afficher le nom des personnes ayant passé commande avant le 1/3/03
– Quel est le numéro de commande de Mr Flamme.
– Mr Godard a-t-il demandé une livraison? (réponse par une case cochée ou non)
– Donnez la date de commande de Mr Loger?
– A quels étages habitent Mr Loger et Mr Leblanc?
– Affichez le nom des personnes ayant demandé une livraison par ordre alphabétique
– Créez une requête qui demande a la personne qui l’exécute un nom, et qui sortira comme résultat l’adresse complète de la personne.
• Requêtes simples basées sur la TableCP– A quelle localité correspond le code postal 1140 ?– Afficher les localités par ordre Alphabétique– Affichez les localités dont le code postal est plus grand que 1140
EXERCICES
Téléchargez la table « Elèves »Quelles sont les Classes (sans doublons)Quelle est la moyenne des points par classeQuelle est la meilleure note par classeQuelle est la somme des ages par classeQuel est le nombre de filles et de garçons Quel est le nombre de fillesQuel est le nombre d'élèves au totalQuel age a la personne la plus jeune toutes classes confonduesQuel age a la fille la plus jeuneAffichez la liste des élèves avec leurs points exprimés en pourcent
Numéro Nom Prénom Modèle Plaque1 Dupont Jean Peugeot fsc4572 Martin Arthur Renault flm444
RELATIONS
Numéro Nom Prénom Modèle Plaque1 Dupont jean Peugeot fsc4572 Martin Arthur Renault flm4443 Dupont jean Mercedes rlm457
RELATIONS
RELATIONS
Numéro Nom Prénom1 Dupont jean2 Martin Arthur
Plaque Modèle Propriétairefsc457 Peugeot 1flm444 Renault 2rlm457 Mercedes 1
RELATIONS
Table maitre
Table détail
TYPES DE RELATIONS
1-N : A CHAQURE ENREGISTREMENT DE LA 1ERE TABLE CORRESPOND UN OU PLUSIEURS ENREGISTREMENTS DE LA 2EME TABLEEXEMPLE: CLIENT – ARTICLES COMMANDES
N-1: UN OU PLUSIEURS ENREGISTREMENTS DE LA 1ERE TABLE PEUT CORRESPONDRE A UN SEUL ENREGISTREMENT DE LA 2EME TABLEEXEMPLE: CODE POSTAL - CLIENT
N-N: PLUSIEURS ENREGISTREMENTS DE LA TABLE 1 PEUT CORRESPONDRE PLUSIEURS ENREGISTREMENTS DE LA 2EME TABLEEXEMPLE: ACTEURS – FILMS
UTILITE DE L’INTEGRITE REFERENTIELLE
AVANT DE RELIER
Questions à se poser:
- Les tables sont elles bien toutes fermées?
- Les champs à relier sont ils du même type et de même taille?
- Les champs que vous reliez pourraient-ils porter le même nom?
- Dans le champ a relier de la table détail retrouve-t-on les mêmes valeurs que dans le champ a relier de la table maitre?
EXERCICES DE RELATIONS
13. Affichez les articles qui doivent être livrés à Woluwé Saint Lambert. 14. Liez la base de données voitures.15. Qui est le propriétaire de la Renault?16. Quelle est la plaque de Mr Martin17. Réalisez une nouvelle base de données destinée à gérer un cheptel bovin.
Cette table devra comporter 2 tables. La 1ere avec le nom, le numéro de tatouage et les coordonnées du propriétaire. La 2ème comprendra un champ date ainsi qu’un champ texte appelé « historique » dans lequel sera repris toute l’histoire de l’animal. Exemple:
- 14/3/98: Naissance - 29/3/98: Vaccination - 10/4/98: Test de dépistage « Encéphalopathie
Spongiforme bovine»Chaque animal aura ainsi tout son historique. Liez ces 2 tables.
1. Téléchargez la db liaison1.mdb2. Liez la table TableArticles à la table TableCommandes
afin d’obtenir avec une requête le résultat ci-contre:3. Affichez une requête permettant d'afficher le nom des
clients avec le nom des articles qu’ils ont commandés. 4. Liez la table TableCommandes à la table TableCP5. Affichez le nom des articles de plus de 2€ commandés par
Martin6. Faites la liste des prix d’achats de chaque article
(Pachat=Pvente/2).7. A quelle adresse faut-il livrer le lait?8. A quelle date le sel a-t-il été commandé?9. Affichez le nom du client et le total de la commande de
chaque client.10. Pour chaque client, affichez le prix de l’article le moins
cher qu’il a commandé. 11. Affichez le nom des articles commandés par Dupont.12. Affichez les localités ou doivent doivent être livrées les
céréales
EXERCICES DE RELATIONS
19. Créez une base de données de type « contacts téléphoniques » permettant de rassembler l’ensemble de vos contacts avec leurs différents téléphones. Tenez compte du principe que chaque contact peut avoir un ou plusieurs numéros de téléphone. (GSM, maison, bureau, maison de campagne…). Basez-vous le plus possible sur l’exemple illustré ci-contre pour réaliser votre travail.
20. Créez une base de données de type: Fournisseurs – Produits. Chaque fournisseur commercialise plusieurs produits.
18. Afin de mieux suivre l’évolution des performances de ses enfants au 100 mètres, Jacques Borlée, père des 3 célèbres athlètes fait appel à vous afin que vous lui réalisiez une base de données reprenant pour chaque enfant leurs temps au 100 mètres. Vous devez donc créer pour cela 2 tables. La première contiendra au minimum les champs nom et prénom. La deuxième contiendra au minimum les champs date, secondes et centièmes. Réalisez tout le nécessaire afin de relier ces deux tables en vous aidant du tableau ci-contre.
LES ETATS
• CREATION D’UN RAPPORT SUR BASE DE LA TABLE SKIEURS:– AFFICHER LE TEMPS MOYEN– AFFICHER LE TOTAL DES POINTS– REGROUPPEMENT PAR NATIONALITE– AFFICHER LE TEMPS MOYEN PAR
NATIONALITE– AFFICHER LE TOTAL DES POINTS PAR
NATIONALITE
EXERCICES D’ETATS
Téléchargez la table « élèves »• Réalisez un état en mode assistant affichant
la liste des élèves. • Refaites la même chose en mode création• Ajoutez en fin de cet état la moyenne
générale de l’ensemble des élèves. • Regroupez ensuite par classe afin de réaliser
une moyenne de points et d’age par classe.
FORMULAIRES
But: Faciliter l’encodage et améliorer la présentation d’une DB.
Démonstration avec la base de données « Voitures F »
FORMULAIRESPRINCIPALES PROPRIETES
FormulaireFormat:
LégendeAffichage par défaut: Formulaire unique / Formulaires continusBarre de défilementAfficher sélecteurBoutons de déplacementBoutons MinMaxBouton FermerLargeur
Données:Source
Détail:Format:
HauteurCouleur de fond
Zone de texte:Format:
PoliceTaille de police
Données:Source contrôle
EXERCICES DE FORMULAIRES- Ouvrez la DB « liaison.mdb »- Créez un formulaire tabulaire basé sur la table Commandes reprenant
le nom et l’adresse de chaque client en mode assistant.- Répétez la même opération en colonne.- Répétez les mêmes opérations en mode création.
- Téléchargez puis Ouvrez la table Eleves.mdb- Créez un formulaire en mode création basé sur la table Elèves d’abord
en colonne puis en mode tabulaire.- Créez les liaisons suivantes:
- TableCommandes – TableArticles- TableCommandes – TableCP
- En mode création, créez un. formulaire « Commandes » - En mode création, créez un. formulaire « Articles »- Insérez le formulaire articles dans le formulaire commandes - Insérez une liste déroulante pour le « Code Postal »- Insérez deux cases a cocher (oui-non) pour le champ livraison. - Créez un formulaire basé sur la table élèves en mode création en
insérant 2 cases à cocher pour le champ sexe (garçon-fille).
EXERCICES DE SYNTHESE