Vous êtes sur la page 1sur 6

h Document Rfrence Titre Thme principale Catgorie Mot cls Nombre page Format vido Dure Nu diteur Nombre

exemplaire

Est dit par Rfrence Numro diteur Editeur Numro diteur Nom Adresse Tlphone

Auteur Est crit par Rfrence Numro auteur Numro auteur Nom Prnom Date-naiss

Exemplaire Rfrence Nu exemplaire Nu rayon

Emprunteur Nu ID Nom A emprunter Nu exemplaire Nu ID Nu emprunt Date-deb Date-fin Prnom Adresse Numro tlphone Catgorie

3-vrification de la cohrence de la base Triggers 1 : Create trigger Non emprunt en cours demprunt Before insert on A emprenter Begin If :new. Nu exemplaire existe in (select nu exemplaire From A emprunter, exemplaire Where A emprunter.nuexemplaire=exemplaire.nuexemplaire and A emprunter.date-fin>= date-systme ) ; Raise_application_error(-9997, exemplaire epuis) ; End ; /////////////////////////////////////////////////////////////////// Triggers 2 : Create trigger quota-emprunt Before insert on A emprenter Declare s number,X number Begin Select count (Nu exemplaire) into s from A emprunter Where A emprunter.nuexemplaire=exemplaire.nuexemplaire and A emprunter.date-fin>= datesystme and A emprunter. numro ID= :new. numro ID ) ; Select catgorie from into X emprunteur where nu ID= :new. numro ID If s=X Raise_application_error(-9997, exemplaire epuis) ; End ; Triggers 3 : Create trigger non r-emprunt Before insert on A emprunter Declare s number Begin Select count(Nu exemplaire)into s from A emprunter Where A emprunter.nuexemplaire=exemplaire.nuexemplaire and A emprunter.date-fin< datesystme and A emprunter. numro ID= :new. numro ID ) ; If s>0 Raise_application_error(-9997, exemplaire epuis) ; End ;

5-Interrogation de la base de donnes 1. Select titre from document where thme=informatique or thme=mathmatique order by titre asc ; 2. Select titre, thme from document Where document. rfrence= exemplaire. rfrence and exemplaire.nu exemplaire in (select nu exemplaire from A emprunter where A emprunter. Nu ID=emprunteur. NuID and emprenteur.nom=Dupont and A emprunter.date-debut=15/11/2002 and A emprunter.date-fin=15/11/2003 ; 3. select titre, nom from auteur, document, exemplaire, A emprunter, ecrit par where auteur.nuauteur=ecrit par. nuauteur and ecrit par.reference=document.reference document.reference=exemplaire.reference and exemplaire.nu exemplaire=a emprunter.nu exemplaire and A emprunter.nuID= emprunteur.nu ID ; 4. khvkhvv 5. select sum(ducument.reference) from document,edit par, editeur where document.reference=edit par.reference and edit par.nu editeur=editeur.nuediteur and editeur.nom=eyrolles ; 6. select nom, count(nom) from editeur, edit par group by editeur.nom ; 7. select titre, count (nu emprunt) from document, exemplaire, A emprunter group by titre ; 8. select editeur.nom from editeur, edit par, document where editeur.nu editeur=edit par.nuediteur and edit par.reference=document.reference and thme=informatique or thme=mathematique group by (editeur.nom) having count (*)>2 ; 9. select nom from emprunteur where adresse= (select adresse from emprunteur where nom=dupont) ; 10. select * from editeur ,edit par, document where edietur.nuediteur=edit par.nuediteur and edit par.reference=document.reference and document.thme<>informatique ; 11. select nom from emprunteur where nu ID not in (select nu ID from A emprunter) ; 12. select * from document where reference not in (select reference from exemplaire, A emprunter where exemplaire.nuexemplaire=A emprunter.nuexemplaire ) ;

13 select nom, prenom from emprunteur, A emprunter where categorie=professionnel and date-fin date-debut=6 MOIS and nuexemplaire in select nuexemplaire from document, exemplaire where document.reference=exemplaire.reference) group by (nu emprunt) having count (*)>1 ; 14 select * from document where nombre exemplaire> avg (nombre exemplaire) ; 15 select nom from auteur ,est ecrit par, document where document.thme in (informatique,mathematique); 16 select nom from diteur, edit par, docuement where document.reference=edit par.reference and edit par.nuediteur=editeur.nuediteur and document.reference in (select reference from A emprunter, exemplaire where A emprunter.nuexemplaire=exemplaire.nuexemplaire group by (nom)) having max (count(*)) ; 17 select titre from document where mot-cls not in select mot-cl from document where titre= sql pour les nuls ; 18 select titre from document where mot-cls in select mot-cl from document where titre= sql pour les nuls ; 19 select titre from document where mot-cls like %SQL% or %nuls% ; 110 - select titre from document where mot-cls = select mot-cl from document where titre= sql pour les nuls ;

Vous aimerez peut-être aussi