1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
Dismiss Notice
Welcome to our Education website, plz like our page facebook to support us. Thank You and wish you good navigation

Exercices SGBD: Exercices système de gestion de base de données SGBD

abdelouafiDec 28, 2016

    1. abdelouafi

      abdelouafi Administrator Staff Member

      Messages:
      181
      Likes Received:
      9
      Trophy Points:
      18
      Joined
      Sep 13, 2016
      Exercice I :
      On considère le modèle suivant :
      ETUDIANT (NEtudiant, Nom, Prénom)
      MATIERE (CodeMat, LibelléMat, CoeffMat)
      EVALUER (NEtudiant, CodeMat, Date, Note)

      Question :
      1) Créer la base de données avec les clés primaire et étrangère.
      2) Ajouter la colonne date de naissance dans Etudiant : DateN.
      3) Ajouter la colonne Groupe : Groupe not null.
      4) Ajouter la contrainte unique pour les deux attributs (NEtudiant, CodeMat).
      5) Ajouter une colonne Age calculé automatiquement à partir de DateN.
      6) Ajouter une contrainte, valeur entre 0 et 20 pour la note.
      7) Créer une vue qui affiche la liste des étudiants (Groupe, Nom, Prénom) et leur moyenne Général




      Solution
      Code:
      USE Master
      Go
      Drop DataBase S5Ex1
      Go
      Create DataBase S5Ex1
      Go
      USE S5Ex1
      Go
      Create table ETUDIANT (NEtudiant int identity primary key, Nom varchar(30), Prénom
      varchar(30))
      Create table MATIERE (CodeMat int identity primary key, LibelleMat varchar(30),
      CoeffMat int)
      Create table EVALUER (NEtudiant int foreign key references ETUDIANT (NEtudiant) on
      DELETE CASCADE, CodeMat int foreign key references MATIERE (CodeMat) on DELETE
      CASCADE, Date smalldatetime, Note decimal(4,2))
      Go
      insert into ETUDIANT values('Ali','P-Ali')
      insert into ETUDIANT values('Ahmed','P-Ahmed')
      insert into ETUDIANT values('Imane','P-Imane')
      insert into ETUDIANT values('Amine','P-Amine')
      Select * from ETUDIANT
      Go
      insert into MATIERE values ('SGBD1',2)
      insert into MATIERE values ('SGBD2',2)
      insert into MATIERE values ('ADO.Net',3)
      insert into MATIERE values ('ASP.Net',3)
      Select * From MATIERE
      Go
      truncate table EVALUER
      insert into EVALUER values (1,1,'24/10/2010',12)
      insert into EVALUER values (1,2,'24/10/2010',20)
      insert into EVALUER values (1,3,'24/10/2010',12)
      insert into EVALUER values (2,3,'24/10/2010',13)
      insert into EVALUER values (1,4,'24/10/2010',5)
      insert into EVALUER values (3,1,'24/10/2010',9.5)
      Select * from EVALUER
      Go
      -- 2)
      Alter Table ETUDIANT add Daten smalldatetime
      -- 3)
      sp_help ETUDIANT
      Alter Table ETUDIANT add Groupe varchar(10) not null default '' with values
      insert into ETUDIANT values('Kamal','P-Kamal','1/1/2011',null)
      insert into ETUDIANT(nom,daten) values('Kamal','1/1/2011')
      -- 4)
      Alter Table EVALUER ADD Constraint cl_unique UNIQUE (NEtudiant,CodeMat)
      -- 5) Colonne Calculé
      Alter Table ETUDIANT Add Age as datediff(year,Daten,getdate())
      update ETUDIANT set daten='21/5/1979'
      select * from ETUDIANT
      -- 6)
      Alter Table EVALUER Add Constraint N_0_20 Check (Note between 0 and 20)
      -- 7)
      Create view MoyGen
      as
      Select Nom, Prénom, Groupe, SUM(Note*CoeffMat)/SUM(CoeffMat) as 'MoyGen'
      From ETUDIANT, EVALUER, MATIERE
      Where ETUDIANT.NEtudiant=EVALUER.NEtudiant and EVALUER.CodeMat=MATIERE.CodeMat
      Group by Nom, Prénom, Groupe
      select * from MoyGen 
       
      Last edited: May 8, 2017
      Loading...

Share This Page

Share