Tp Ecolexx SQL Ldd

3
TP2-Creation de Base de données avec SQL Server, 09/04/2007 Créer une base de données nommée « ECOLEXX » Où XX est votre nom. Utiliser les instructions suivantes : USE master if exists (select * from master..sysdatabases where name = 'ECOLEXX') drop database ECOLEXX GO CREATE DATABASE ECOLEXX ON ( NAME = ECOLEXX_dat, FILENAME =‘d:\MES TPs\ECOLEXXdat.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5) LOG ON ( NAME = 'ECOLEXX_log', FILENAME = 'd:\MES TPs\ECOLEXXlog.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB ) GO use ECOLEXX Les étapes qui suivent doivent être effectuées dans l’ordre indiqué : PARTIE 1 : Création et Modification des schémas : 1.Créer la table Etudiant (Mat, Nom, Prenom) La clé primaire doit être déclarée avec l’attribut CONSTRAINT PK_Etudiant primary key (Mat), 2.Créer la table Cours(CCode, CNom, Enseignant) sans déclarer une clé primaire, Ccode doit être not null 3.Créer la table Examen(CCode, Mat, Note, Edate) Définir la clé primaire formée par Ccode et Mat. Utiliser les instructions pour modifier une table : 4. Ajouter la définition de la clé primaire à Cours 5. Ajouter l’attribut DateNais à Etudiant 6. Ajouter l’attribut Diplôme (type : chaîne) à Etudiant 7. Supprimer Diplôme de Etudiant 8. Ajouter l’attribut Diplôme (type : chaîne) à Cours 9. Ajouter la contrainte de clé étrangère Mat à Examen 10. Ajouter la contrainte de clé étrangère CCode à Examen 11. Supprimer la contrainte de clé étrangère sur Ccode 12. Supprimer l’attribut Note de Examen 13. Ajouter l’attribut Note à Examen avec valeur défaut 0 En ayant sauvé les définitions de tables dans un fichier : 14. Supprimer la table Cours. 15. Supprimer la table Etudiant. Expliquer l’erreur produite. 16. Supprimer la table Examen

Transcript of Tp Ecolexx SQL Ldd

Page 1: Tp Ecolexx SQL Ldd

TP2-Creation de Base de données avec SQL Server, 09/04/2007 Créer une base de données nommée « ECOLEXX » Où XX est votre nom. Utiliser les instructions suivantes : USE master if exists (select * from master..sysdatabases where name = 'ECOLEXX') drop database ECOLEXX GO CREATE DATABASE ECOLEXX ON ( NAME = ECOLEXX_dat, FILENAME =‘d:\MES TPs\ECOLEXXdat.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5) LOG ON ( NAME = 'ECOLEXX_log', FILENAME = 'd:\MES TPs\ECOLEXXlog.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB ) GO use ECOLEXX Les étapes qui suivent doivent être effectuées dans l’ordre indiqué : PARTIE 1 : Création et Modification des schémas :

1. Créer la table Etudiant (Mat, Nom, Prenom) La clé primaire doit être déclarée avec l’attribut CONSTRAINT PK_Etudiant primary key (Mat),

2. Créer la table Cours(CCode, CNom, Enseignant) sans déclarer une clé primaire, Ccode doit être not null

3. Créer la table Examen(CCode, Mat, Note, Edate) Définir la clé primaire formée par Ccode et Mat. Utiliser les instructions pour modifier une table : 4. Ajouter la définition de la clé primaire à Cours 5. Ajouter l’attribut DateNais à Etudiant 6. Ajouter l’attribut Diplôme (type : chaîne) à Etudiant 7. Supprimer Diplôme de Etudiant 8. Ajouter l’attribut Diplôme (type : chaîne) à Cours 9. Ajouter la contrainte de clé étrangère Mat à Examen 10. Ajouter la contrainte de clé étrangère CCode à Examen 11. Supprimer la contrainte de clé étrangère sur Ccode 12. Supprimer l’attribut Note de Examen 13. Ajouter l’attribut Note à Examen avec valeur défaut 0 En ayant sauvé les définitions de tables dans un fichier : 14. Supprimer la table Cours. 15. Supprimer la table Etudiant. Expliquer l’erreur produite. 16. Supprimer la table Examen

Page 2: Tp Ecolexx SQL Ldd

PARTIE 2 Création des Tables et insertion des valeurs 17. Re-créer les trois tables, toutes les contraintes doivent être spécifiées durant la création des tables. Les contraintes référentielles doivent être nommées. - Etudiant : le nouveau schéma est Etudiant (Mat, Nom, Prenom, - DateNais) imposer le contrainte not null sur l’attribut Nom et le contrainte Unique sur le couple des attributs (Nom, Prenom) - Cours : le nouveau schéma est Cours(CCode, CNom, Enseignant, Diplome) - Examen : imposer le contraint que la note doit avoir une valeur entre 0 et 20 et que la valeur défaut est 0 18. Insérer dans la table Etudiant les tuples suivants : 'st123', 'Durand', 'Jean', '3-12-84' 'st123', 'Villard', 'Ann', '3-12-84' Expliquer l’erreur produite. 19. Insérer dans la table Etudiant un tuple avec les seules valeurs de Mat et Nom : 'st124', 'Villard' 20 . Insérer dans la table Etudiant le tuples suivants : 'st126', 'Villard', 'Marie', '1-9-87' 'st127', 'Villard', 'Marie', '2-3-86' Expliquer l’erreur produite 21. Insérer dans la table Etudiant un tuple avec les valeurs 'st128', 'Villard', 'Philippe’, '1-9-87' 22.. Insérer dans la table Etudiant un tuple avec les seules valeurs de Mat, Prenom, DateNais : 'st129','Walter','5-11-87' Expliquer l’erreur produite. 23. Insérer dans Etudiant : 'st221', 'Dupont', 'Ann', '1-12-85' 'st222', 'Le Font', 'Walter', '10-12-85' 'st223', 'Joste', 'Monique', '19-4-85' 'st224', 'Pardin', 'Hugo', '8-1-86' 24. Insérer dans Cours : 1, 'BD', 'Milhaud', 'Informatique' 2, 'Reseaux', 'Milhaud', 'Informatique' 3, 'Chimie1', 'Bonnet', 'ScienceNat' 4, 'Chimie2', 'Bonnet', 'ScienceNat' 5, 'Statistique', 'Barbin', 'ScienceNat' 6, 'Economie1', 'Conti', 'SciencePo' 7, 'Statistique', 'Barbin', 'SciencePo' 25. Insérer dans Examens : 1,'st123',12,'3-2-04' 1,'st124',13,'3-2-04' 2,'st124',14,'1-7-05' 7,'st223',12,'1-2-04' 7,'st224',14,'3-2-04' 7,'st126',14,'3-7-05' 5,'st223',12,'1-2-04' 5,'st224',11,'3-2-04' 1,'st224',13,'19-5-05' 5,'st124',18,'20-2-02' 4,'st124',22,'7-2-02' Expliquer l’erreur produite.

Page 3: Tp Ecolexx SQL Ldd

26. Insérer dans Examens un tuple avec les valeurs de Ccode et Mat : 3 et 'st124' 27. Créer une table ResExamen avec attributs :

ResExamen(Matricule, NomEtudiant, NomCours, Note) Remplier la table par une seule opération d’insertion avec toutes les données dérivantes des autres tables 28. Supprimer la table ResExamen PARTIE 3 Modification des données et intégrité référentielle 29. Insérer dans Examens le tuple

8, 'et330', 16, '4-4-04'. Expliquer l’erreur produite. 30. Décrémenter de 2 points les notes de Pardin 31. Supprimer les examens soutenus par Durand 32. Supprimer Durand de Etudiant 33. Supprimer Joste de Etudiant. Expliquer l’erreur produite. 34. Modifier la matricule de Joste dans Etudiant. Expliquer l’erreur produite. 35. Remplacer le contrainte de clé étrangère sur Mat avec une contrainte qui permit suppression et mis à jours en cascade (spécifier l’option cascade pour les deux opérations). La nouvelle contrainte devra avoir un nom différent. 36. Supprimer Joste de Etudiant 37. Modifier la matricule de Pardin