Initiation MS Access 2010 Structures – Tables, schémas et Données

26
L. Gzara, E. Khouri, M Tollenaere 1 MSI 2A ICL – Initiation ACCESS Structures 2014 Initiation MS Access 2010 Structures – Tables, schémas et Données TD -- MSI 2 ème Année GI filière ICL

description

Initiation MS Access 2010 Structures – Tables, schémas et Données. TD -- MSI 2 ème Année GI filière ICL. Objectifs : Prendre en main les structures dans Access Importer des données Obtenir une BD intègre (données et schémas en conformité) Fichiers TD-Access dans Chamilo. - PowerPoint PPT Presentation

Transcript of Initiation MS Access 2010 Structures – Tables, schémas et Données

Page 1: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 1 MSI 2A ICL – Initiation ACCESS Structures 2014

Initiation MS Access 2010 Structures – Tables, schémas et Données

TD -- MSI

2ème Année GI filière

ICL

Page 2: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 2 MSI 2A ICL – Initiation ACCESS Structures 2014

Objectifs :- Prendre en main les structures dans Access

- Importer des données

- Obtenir une BD intègre (données et schémas en

conformité)

- Fichiers TD-Access dans Chamilo Si vous ne construisez pas à l'avance

les relations entre vos tables, vous

devrez recommencer cette procédure

chaque fois que vous voudrez créer

une nouvelle requête. Il est donc

toujours préférable de prendre le

temps de bien concevoir ses

tables et de définir les

bonnes relations. De cette

manière vos requêtes seront plus

faciles et plus rapides à construire

Base de données commandes – articles –

clients ACCESS 2010 exemple

2014CMD-Clients-prod.mdb

Prérequis

2014MS-Access-Requetes.ppt

Page 3: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 3 MSI 2A ICL – Initiation ACCESS Structures 2014

Principes généraux de l’interface

Zone de menu principalFichier -- Accueil – Créer – Données ext …

Les objets

AccessTables – Requetes –

Formulaires – Macros…

Zone d’icones

contextuellesAffichage – Presse Papier –

Trier et filtrer…

Zone de travail

Sélectionner “Outils de base de données” >> Relations

Page 4: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 4 MSI 2A ICL – Initiation ACCESS Structures 2014

Modèle statique UML

Commande

annuler ()

confirmer ()

Ajout-article

Chag-quantité

ClientNUM-Client

nom

téléphone

e-mail

Adresse

pays

totalfacturé ()

Cmd-en-cours ?

A-effectué>

1

0..*

NUM-CMD

Montant-payé

Date-cmd

Date-livraison

Date paiement

Produit

0..*

CODE

Désignation

Rayon

Ss-Rayon

Prix-Unitaire

Est_composée-de>

0..*

Quantité

Cahier des charges : modèle de classes UML à implémenter

Des clients passent des commandes qui comportent des produits en

quantité variable: les commandes évoluent et passent par les états

“preliminaire”, livrée” et “payée”. On désire connaitre le Top 10 des

clients en terme de volume facturé et aussi les clients qui ont des

commandes en cours, comme ceux qui ont des retards de paiement.

Page 5: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 5 MSI 2A ICL – Initiation ACCESS Structures 2014

Modèle statique UML

Commande

annuler ()

confirmer ()

Ajout-article

Chag-quantité

ClientNUM-Client

nom

téléphone

e-mail

Adresse

pays

totalfacturé ()

Cmd-en-cours ?

A-effectué>

1

0..*

NUM-CMD

Montant-payé

Date-cmd

Date-livraison

Date paiement

Produit

0..*

CODE

Désignation

Rayon

Ss-Rayon

Prix-Unitaire

Est_composée-de>

0..*

Quantité

Créer une TABLE “Client” avec les attributs :

-Num-client

-Nom

-Telephone

-Adresse

-pays

Alimenter la TABLE “Client” avec les données

du fichier Excel “2014cmd-produits.xls”

Page 6: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 6 MSI 2A ICL – Initiation ACCESS Structures 2014

Table “Client”

Créer la TABLE “Client”

avec les attributs :

-Num-client (Numérique =

clef)

-Nom (texte)

-Société (texte 80 caract.)

-Telephone

-Adresse

-pays Alimenter la TABLE “Client” avec les données du fichier Excel

2014cmd-produits.xls

Attentio

n au

type de chaque

attribut

Page 7: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 7 MSI 2A ICL – Initiation ACCESS Structures 2014

Alimenter les données de la table “Client”

Les 216 enregistrements sont tous compatibles avec les

contraintes sur attributs (dont Clef primaire)

Par Données externes :

-Excel

-Importer

Selon protocole

Les Données invalides vont dans la Table d’erreurs (Super!)

On peut aussi procéder par Copier - Coller

Page 8: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 8 MSI 2A ICL – Initiation ACCESS Structures 2014

On continue avec la table “Commande”

Commande

annuler ()

confirmer ()

Ajout-article

Chag-quantité

ClientNUM-Client

nom

téléphone

e-mail

Adresse

pays

totalfacturé ()

Cmd-en-cours ?

A-effectué>

1

0..*

NUM-CMD

Montant-payé

Date-cmd

Date-livraison

Date paiement

Créer la TABLE “Commande”

avec les attributs :

-Num-cmd (Numérique = clef)

-Client (Num)

-Montant-payé (Monétaire €)

-Date cmd (date)

-Date livraison (date)

-Date paiement (date)

-Etat (liste-etat)

Page 9: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 9 MSI 2A ICL – Initiation ACCESS Structures 2014

Alimenter les données de la table “Commande”

Les 300 enregistrements sont tous compatibles avec

les contraintes sur attributs (dont Clef primaire)

On importe les commandes

Par Données externes :

-Excel -- Importer

-Ou par Copier - Coller

Vérifiez champ par champ la

validité des structures:

Page 10: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 10 MSI 2A ICL – Initiation ACCESS Structures 2014

Lier les “Commandes” et les “clients”

Lier graphiquement l’attribut Client et Num-client

Contrainte d’intégrité référentielle

Onglet >> outils de base de données >> relations

Page 11: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 11 MSI 2A ICL – Initiation ACCESS Structures 2014

Lier les “Commandes” et les “clients”

Lier graphiquement l’attribut Client et Num-client

Contrainte d’intégrité référentielle

Onglet >> outils de base de données >> relations

Page 12: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 12 MSI 2A ICL – Initiation ACCESS Structures 2014

Lier les “Commandes” et les “clients”

On peut maintenant implémenter les méthodes de la classe

“client” : mcd en cours? Et Montant total?

Les attributs Clients.NumClient et Commande.Client

DOIVENT être de même type (ici entier long)

L’intégrité référentielle

garantit que toute

commande a bien un

client.

Page 13: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 13 MSI 2A ICL – Initiation ACCESS Structures 2014

Implémenter les méthodes pour les “clients”

Commande en cours? ………… Montant total payé / client (top 10) ?

Bravo, une partie du SI client –

commande – produit est réalisée.

Nous allons continuer avec les produits.

Page 14: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 14 MSI 2A ICL – Initiation ACCESS Structures 2014

STOP 1

La coexistence des MODES Création (ou Structure) et

feuille de données au même moment (soit programmation et

runtime) est une caractéristique d’ACCESS.

MAIS, dans la plupart des cas, toute modification de structure

(en MODE création) nécessite qu’aucune fenêtre “Feuille de

données” ne soit ouverte sur la même table.

C’est parfois bien irritant au début (et même ensuite) en

particulier lors des modifications de schémas (ajout de

relations, suppressions..).

Page 15: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 15 MSI 2A ICL – Initiation ACCESS Structures 2014

On continue avec les produits et les lignes

de commande

Créer la TABLE “Produit” avec les attributs :

-Code-prod (Numérique = clef)

-Désignation (Texte 50)

-PU (Monétaire €)

-Rayon (texte)

-Ss-rayon (texte)

Commande

annuler ()

confirmer ()

Ajout-article

Chag-quantité

ClientNUM-Client

nom

téléphone

e-mail

Adresse

pays

totalfacturé ()

Cmd-en-cours ?

A-effectué>

1

0..*

NUM-CMD

Montant-payé

Date-cmd

Date-livraison

Date paiement

Produit

0..*

CODE

Désignation

Rayon

Ss-Rayon

Prix-Unitaire

Est_composée-de>

0..*

Quantité

Alimenter la TABLE “Produit”

avec les données du fichier Excel

2014cmd-produits.xls

Page 16: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 16 MSI 2A ICL – Initiation ACCESS Structures 2014

puis les lignes de commande

Créer la TABLE “LigneCMD”

avec les attributs :

-Code-prod (Numérique = clef)

-Num-CMD (Numérique = clef)

-Quantité (Numérique)

Commande

annuler ()

confirmer ()

Ajout-article

Chag-quantité

ClientNUM-Client

nom

téléphone

e-mail

Adresse

pays

totalfacturé ()

Cmd-en-cours ?

A-effectué>

1

0..*

NUM-CMD

Montant-payé

Date-cmd

Date-livraison

Date paiement

Produit

0..*

CODE

Désignation

Rayon

Ss-Rayon

Prix-Unitaire

Est_composée-de>

0..*

Quantité

Alimenter la TABLE “Ligne-CMD”

avec les données du fichier Excel

2014cmd-produits.xls

Page 17: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 17 MSI 2A ICL – Initiation ACCESS Structures 2014

puis les lignes de commande

Attention à LA CLEF

double de la table “Ligne-

CMD”

Code-prod et Num-CMD

En sélectionnant les 2

lignes, puis clic sur l’icone

“Clef”

Les attributs liés

DOIVENT être de même

type (ici entier long)

Page 18: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 18 MSI 2A ICL – Initiation ACCESS Structures 2014

Lier les “Commandes” et les “Produits”

Lier graphiquement

l’attribut CodeProduit et

Produit puis Commande

et NumCMD

Contraintes d’intégrité

référentielle

Onglet >> outils de base de données >> relations

Page 19: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 19 MSI 2A ICL – Initiation ACCESS Structures 2014

Exploitons la base et ses donnéesRequêtes

1. Le C.A. mensuel par magasin

2. Le CA par client et par an

3. Le CA par rayon et par an.

4. Le Top10 des clients

5. Le Top 10 des produits (par quantité, par CA)

6. Le montant des PU article par commande

7. Les commandes dont le montant s’écarte de plus de

10% du total des articles

Page 20: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 20 MSI 2A ICL – Initiation ACCESS Structures 2014

Retour sur l’état (statut) des Commandes

L’état a été défini comme un texte libre !!!

Or, on doit pointer sur une liste finie d’états (preliminaire,

livree, payee) éventuellement extensible.

Page 21: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 21 MSI 2A ICL – Initiation ACCESS Structures 2014

Retour sur l’état (statut) des Commandes

On crée une table

“Etats-CMD” qui va

contenir les statuts

successifs (dans un

ordre donné) pris

par les commandes.

La clef est bien le

nom de l’état (un

seul état “livrée”).

Page 22: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 22 MSI 2A ICL – Initiation ACCESS Structures 2014

Retour sur l’état (statut) des Commandes

On la remplit et on la

rattache à l’attribut “Etat”

de la commande.

Toutes les commandes ont

alors un état “conforme” !!

Page 23: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 23 MSI 2A ICL – Initiation ACCESS Structures 2014

Bénéfice : un menu déroulant permet de choisir l’état

Interface saisie de texte

Modification de l’attribut “Etat”

de la commande.

On passe en zone de liste

déroulante.

Page 24: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 24 MSI 2A ICL – Initiation ACCESS Structures 2014

Bénéfice : un menu déroulant permet de choisir l’état

La source d’un controle est le

lieu de stockage du résultat

Le menu “zone de liste déroulante” se fait plus riche.

Nous allons éditer le contenu

sous forme d’une requete

On peut avoir des menus

déroulants à plusieurs

colonnes : exemple on

présente les noms, on

sélectionne le code.

Page 25: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 25 MSI 2A ICL – Initiation ACCESS Structures 2014

Bénéfice : un menu déroulant permet de choisir l’état

D’où l’intérêt de

parler un peu SQL

Le contenu de “zone de liste déroulante”

L’interface d’acces à l’état de

la commande

Le menu déroulant se trouve dans tous les objets créés

Y a comme une erreur dans

l’ordre des états !!!!

Je vous laisse corriger…. et

apprécier comment Access gère

la dynamique des objets.

Page 26: Initiation MS Access 2010  Structures – Tables, schémas et Données

L. Gzara, E. Khouri, M Tollenaere 26 MSI 2A ICL – Initiation ACCESS Structures 2014

On est au bout de cette section

Vous savez maintenant :• Créer des structures de tables

• Créer des attributs avec type et contraintes

(texte, entier, memo, date, objet OLE..)

• Identifier et créer les clefs primaires

• Importer des données

• Copier – coller des données

• Créer des contraintes d’intégrité entre tables

• Utiliser les requètes “sélection” pour tirer des

informations des données

• Créer des menus déroulants pour renseigner des

attributs

Il vous reste à travailler la création des interfaces, des

graphiques, la recherche de données, l’évolution des

données pour créer des applications.

C’est l’objet du prochain chapitre.