35
Travaux Pratiques sous Access: TP1 (Création d'une base de données et ses tables, établissement des relations entre les tables et saisie des données à travers des formulaires) 1°/ Créer la base de données nommée: BD_gestion_des_commandes 2°/ Créer les quatre tables de la base : clients, commandes, produits et lignes Attribuer les clés nécessaires : clients (cin), commandes (num_cmd), produits (ref) et lignes (num_cmd et ref) Table Clients: Nom du champ Type de données Description Cin Texte(20) N° de la carte d'identité nationale Nom Texte(20) Nom du client Prenom Texte(20) Prénom du client Ville Texte(20) Ville du client Catg Texte(10) Catégorie du client C1, C2 ou C3 Table Commandes: Nom du champ Type de données Description Num_cmd Numérique Numéro de la commande Cin Texte(20) Cin : Code client Date Date/Heure Date de la commande Table produits: Nom du champ Type de données Description Ref Texte(20) Référence du produit Desg Memo Désignation du produit Pu Monétaire Prix unitaire du produit Table lignes: Nom du champ Type de Description CHARANI ETTAIBI professeur universitaire à la FSJESM Page 1

TravauxPratiques Access 2014 2015

  • Upload
    salma

  • View
    46

  • Download
    0

Embed Size (px)

DESCRIPTION

TravauxPratiques Access 2014 2015

Citation preview

Initiation

Travaux Pratiques sous Access: TP1

(Cration d'une base de donnes et ses tables, tablissement des relations entre les tables et saisie des donnes travers des formulaires)

1/ Crer la base de donnes nomme: BD_gestion_des_commandes2/ Crer les quatre tables de la base : clients, commandes, produits et lignes Attribuer les cls ncessaires : clients (cin), commandes (num_cmd), produits (ref) et lignes (num_cmd et ref)

Table Clients:

Nom du champType de donnesDescription

CinTexte(20)N de la carte d'identit nationale

NomTexte(20)Nom du client

PrenomTexte(20)Prnom du client

VilleTexte(20)Ville du client

CatgTexte(10)Catgorie du client C1, C2 ou C3

Table Commandes:

Nom du champType de donnesDescription

Num_cmdNumriqueNumro de la commande

CinTexte(20)Cin: Code client

DateDate/HeureDate de la commande

Table produits:

Nom du champType de donnesDescription

RefTexte(20)Rfrence du produit

DesgMemoDsignation du produit

PuMontairePrix unitaire du produit

Table lignes:

Nom du champType de donnesDescription

Num_cmdNumriqueNumro de la commande

RefTexte(20)Rfrence du produit

qNumriqueLa quantit vendue au client

3/Etablir les relations entre les tables: relation de type 1 n

Clients (1)--------((n) Commandes

Commandes(1)--------((n) lignes

Produits(1)--------((n) lignes

4/Saisir les donnes:Crez pour chaque table un formulaire de saisie des donnes. Vous devez crer quatre formulaires. Utilisez pour cela, la cration dun formulaire laide de lassistant:

frmclients, frmcommandes, frmproduits et frmlignes_commandes

Table clients :

cinnomprnomvillecatgorie

A100amanimohamedcasablancaC1

B200sellamiaminerabatC1

C300asmourjalilagadirC3

D400tounsimostafacasablancaC2

E500kalamisamirafesC3

F600alamisanaacasablancaC2

G700MounirhamidcasablncaC1

H800aminesoufianerabatC2

Table commandes :Numro de commandecindate

1A10001/01/04

2A10001/02/04

3A10001/03/04

4B20015/04/04

5B20015/05/04

6B20015/06/04

7C30010/07/04

8C30025/09/04

9D40010/10/04

10E50025/10/04

11F60011/11/04

12F60012/12/04

13G70015/12/04

14H80025/12/04

Table produits :

Rfrence du produitDsignation du produitPrix unitaire

PRD01Claviers250

PRD02Ecrans700

PRD03Souris100

PRD04haut-parleurs100

PRD05imprimantes1200

Table lignes :

Numro de commandeRfrence du produitQuantit

1PRD0110

1PRD022

2PRD025

2PRD0320

3PRD0430

4PRD0415

5PRD0420

6PRD0510

7PRD0520

8PRD015

9PRD015

10PRD011

11PRD023

11PRD042

12PRD0325

12PRD0510

13PRD055

14PRD036

Travaux Pratiques sous Access: TP2

(Manipulation des requtes de slection)La Base de donnes: Gestion_des_commandes

Donner les requtes: (Utiliser les mthodes QBE et SQL) 1- Afficher les Noms et prnoms des clients.

QBE:

Rsultat:

SQL:

SELECT nom, prenom

FROM clients;

2- Afficher le numro, le nom, le prnom et la ville de chaque client. Avec le nom et le prnom dans une seule colonneet le rsultat tri par ordre croissant sur le nom et prnom.QBE:

SQL:

SELECT cin, [nom] & " " & [prenom] as [Nom et prnom], ville

FROM clients

ORDER BY [nom] & " " & [prenom] ASC;

3- Afficher les clients de la ville Casablanca.QBE:

SQL:

SELECT cin, nom, ville

FROM clients

WHERE ville="casablanca";

4- Afficher toutes les commandes dont la quantit est suprieure 25.

QBE:

SQL:

SELECT num_cmd, ref, q

FROM lignes

WHERE q>=25;

5- Afficher toutes les lignes de commandes dont la rfrence du produit est PRD03 et dont la quantit est suprieure ou gale 20.QBE

SQL:

SELECT num_cmd, ref, q

FROM lignes

WHERE (ref="PRD03") AND (q>=20);

6- Afficher toutes les lignes de commandes dont la rfrence du produit est PRD03 ou dont la quantit est suprieure 20.QBE:

SQL:

SELECT num_cmd, ref, q

FROM lignes

WHERE (ref="PRD03") OR (q>=20);

7- Afficher toutes les lignes de commandes dont la rfrence du produit est PRD03 et dont la quantit est suprieure 20, ou alors le numro de commande >5

QBE:

SQL:

SELECT num_cmd, ref, q

FROM lignes

WHERE ((ref="PRD03") AND (q>=20))or (num_cmd>5);

8- Afficher les commandes dont le numro est compris entre 3 et 10.

QBE: faon1

QBE: faon2

QBE: faon3

SQL:

Manire1:

SELECT num_cmd, date

FROM commandes

where (num_cmd>=3) AND (num_cmd=#01/15/2008#;

17- Afficher le numro et la date des commandes qui sont ralises entre les dates: 10/01/2008 et 15/06/2008.QBE:

SQL:

SELECT num_cmd, date

FROM commandes

WHERE (date>=#01/10/2008#) AND (date=Date()-25));

Manire2:

SELECT commandes.num_cmd, commandes.Date, Sum(lignes.q) AS Total_Qte, Avg(lignes.q) AS Moyenne_Qte

FROM commandes INNER JOIN lignes ON commandes.num_cmd = lignes.num_cmd

WHERE DateDiff("d",[date],Date())opration (Valeur)

SELECT produits.ref--->(entte de ligne)

FROM produits INNER JOIN ((clients INNER JOIN commandes ON clients.cin = commandes.cin) INNER JOIN lignes ON commandes.num_cmd = lignes.num_cmd) ON produits.ref = lignes.ref

GROUP BY produits.ref

PIVOT clients.ville;---->(entte de colonne)

Chaque dsignation dun produit doit tre affiche dans une seule colonne et chaque ville doit tre place dans une seule ligne:

Etapes:

1. Crer une nouvelle requte en introduisant les tables:Clients, Commandes, Lignes commandes et produits.

2. En mode Cration de requte, cliquez sur le bouton Analyse Croise () ou slectionnez la commande Analyse croise du menu Requte. Une nouvelle ligne nomme Analyse apparat dans la grille.

3. Dans la ligne Analyse de la grille de la requte, choisir en tte de ligne pour le champ Ville et en tte de colonne pour le champ dsignation. Tout champ dfini en ligne ou en colonne doit avoir Regroupement dans la zone Opration. Choisir Valeur pour le champ Quantit et dfinir lopration somme pour ce champ dans la ligne Opration

2- Afficher les quantits totales mensuelles (janvier, fvrier.dcembre) commandes pour chaque produit: (utiliser la fonction format (date;mmmm)QBE:Manire1

QBE:Manire2

SQL:

TRANSFORM Sum(lignes.q) AS SommeDeq --->opration (Valeur)

SELECT Format([date],"mmmm") AS mois --->(entte de ligne)

FROM produits INNER JOIN (commandes INNER JOIN lignes ON

commandes.num_cmd = lignes.num_cmd) ON produits.ref =

lignes.ref

GROUP BY Format([date],"mmmm"), Month([date])

ORDER BY Month([date])

PIVOT produits.desg; ---->(entte de colonne)

3- Afficher les quantits totales mensuelles commandes pour chaque produit au cours du premier semestre de lanne 2008.

SQL:

TRANSFORM Sum(lignes.q) AS SommeDeq

SELECT Format([date],"mmmm") AS mois

FROM produits INNER JOIN (commandes INNER JOIN lignes ON

commandes.num_cmd = lignes.num_cmd) ON produits.ref =

lignes.ref

WHERE (Month([date]) Between 1 And 6) AND (Year([date])=2008)

GROUP BY Format([date],"mmmm"), Month([date]), Year([date])

ORDER BY Month([date])

PIVOT produits.desg;Requtes de mise jour et suppressionUne requte de mise jour permet de mettre jour des donnes dans une table. Soit en modifiant les donnes de cette table, soit en les supprimant.

Exemples:

2- Mettre jour les ttva 19% pour les produits dont le prix unitaire est >=400 DHS.

QBE:

SQL:

UPDATE produits

SET ttva = 19

WHERE pu>=400;

UPDATE produits

SET produits.ttva = 19

WHERE produits.pu>=400));

2- Augmentez de 1 dh les prix unitaires des produits dont le taux de TVA est 19%.

QBE:

SQL:

UPDATE produits

SET produits.pu = [pu]+1

WHERE produits.ttva=19;3- Supprimer les clients de la ville safi.

QBE:

SQL:

DELETE clients.ville

FROM clients

WHERE clients.ville="safi";

Entre #10/01/2008# Et #15/06/2008#

In(3;5;6)

"mars" ou "mai" ou "juin")

CHARANI ETTAIBI professeur universitaire la FSJESMPage 13