Vous êtes sur la page 1sur 13

Ministère de l’Enseignement Supérieur, de la Recherche Scientifique et de Technologie

Université de la Manouba
Ecole Nationale des Sciences de l’Informatique

TP SQL sous Access

Réalisé par

Dghaïes Houssem Ghazi Hakim

Année Universitaire 2010-2011


la création des tables

la table client :

La table vente :
La table facture :
Table Produits :

La Table Facture :
Schéma relationnel

• CLIENT(CodCli, nom, prenom, adresse, code_postal, ville, num_telephone)

• FACTURE(numCli, date_facture, #numCli)

• VENDRE(#numFact, #refProd, Qt_vendue)

• PRODUIT(refProd, Désignation, Qt_dispo, PUV)

Les différentes requêtes :

1. SELECT refProd

FROM Produit;

2. SELECT refProd, Désignation

FROM Produit

WHERE (PUV>10);

3. SELECT numFact
FROM Facture

WHERE (date_facture>#1/1/2006#) And (date_facture<#2/15/2006#);

4. SELECT refProd

FROM Produit

WHERE Désignation like "*test*";

5. SELECT facture.numFact,client.nom,client.prenom,client.codCli

FROM client inner join facture on facture.numCli=client.codCli;

6. SELECT Produit.refProd, Produit.Désignation, Facture.numFact

FROM Produit INNER JOIN (Facture INNER JOIN Vente ON Facture.numFact=Vente.numFact) ON


Produit.refProd=Vente.refProd

WHERE (((Produit.Désignation)="jeux"));

7. SELECT req05.numFact, req06.Désignation


FROM req05, req06

WHERE req05.numFact=req06.numFact;

8. SELECT refProd

FROM Vente

WHERE [Qt_vendue]>10;

9. SELECT count(*)

FROM produit;

10. SELECT numCli, count(*)

FROM facture

GROUP BY numCli;

11. SELECT UCase(client.nom) AS nom, Count(*) AS N°facture

FROM client, Facture

WHERE Facture.numCli=client.codCli

GROUP BY UCase(client.nom);
12. SELECT Facture.numCli, Facture.numFact, Sum(PUV*[Qt_vendue]) AS HT,
Sum(PUV*[Qt_vendue])*1.196 AS TTC

FROM Facture, Vente, Produit

WHERE (((Facture.numFact)=[Vente].[numFact]) AND ((Vente.refProd)=[Produit].[refProd]))

GROUP BY Facture.numCli, Facture.numFact;

13. SELECT client.nom, AVG(HT) AS TOT_HT, SUM(TTC) AS TOT_TTC

FROM req12, client

WHERE req12.numCli=client.codCli

GROUP BY client.nom;
14. SELECT UCASE(client.nom) AS nom, COUNT(*) AS Nbr_Fact, SUM(HT) AS TOT_HT, SUM(TTC)
AS TOT_TTC

FROM client, req12

WHERE req12.numCli=client.codCli

GROUP BY client.nom;

15. SELECT Facture.numFact

FROM Facture

WHERE 01 IN (SELECT refprod

FROM Vente

WHERE Facture.numFact=Vente.numFact)

AND 02 IN (SELECT refProd

FROM Vente

WHERE Facture.numFact=Vente.numFact);
16. SELECT UCASE(client.nom) AS Nom, COUNT(*) AS Nbr_Fac, SUM(HT) AS TOT_HT, SUM(TTC)
AS TOT_TTC

FROM client, req12

WHERE req12.numCli=client.codCli AND client.codCli NOT IN (SELECT Facture.numCli

FROM Facture, Vente

WHERE Facture.numFact=Vente.numFact
AND Vente.refProd=3;)

GROUP BY UCASE(client.nom);

Les Formulaires :

Le formulaire des clients :


Il contient 2 boutons :le premier ouvre l’état clients

Et le deuxième ouvre le formulaire contenant les factures de chaque client


Et ce dernier formulaire contient lui-même deux boutons : le premier il ouvre un etat qui contient les produits de chaque facture
Et le deuxième donne une descriptions sur les produits de ce client avec TH et TTC en utilisant requête 1 et 14

Macro
Le macro crée est le suivant :
Et voici l’exécution :

Vous aimerez peut-être aussi