Académique Documents
Professionnel Documents
Culture Documents
Pr HAJAR LAZAR
PLAN
I. Initiation au SGBD Microsoft SQL SERVER
II. Utilisation du langage de manipulation de données (LMD)
III. Introduction au langage Transact SQL (T-SQL)
IV. La gestion des utilisateurs
V. Sauvegarde et restauration d’une base de données
SQLSERVER
VI. Sécurité d’une base de données SQLSERVER
Système d’information
✓Succès dus à :
➢Langage graphique
➢Concepts simples :
▪ Eléments (objets) → entités
▪ Liens entre les éléments (objets) → association
Modélisation des données
Attribut :
• propriété d’une entité.
• prend des valeurs simples, par exemple entiers ou chaînes de caractères
(domaine d'attribut)
Exemple :
✓ Id_Personne
Personne
Modélisation des données
Exemple :
✓ Id_Personne
✓ Nom
Entité ✓ Prénom Attributs
✓ Age
✓ Adresse
✓ NumTél
Personne
Modélisation des données
Association (Relation) :
• C’est un lien entre deux ou plusieurs entités.
Entités
Achète
Personne Produit
Modélisation des données
Association (Relation) :
• C’est un lien entre deux ou plusieurs entités.
Association (Relation) :
• C’est un lien entre deux ou plusieurs entités.
Exemple :
Si K est le degré d’une association :
✓ K = 2 : relation binaire
Personne Passport
CIN Possède Num_Pass
Nom Date_emission
A R B Prénom Province
Modélisation des données
Association (Relation) :
• C’est un lien entre deux ou plusieurs entités.
A R B Professeur Module
CIN Enseigner Code_Module
Nom Nom
Prénom Niveau
C
Modélisation des données
Cardinalité :
Résumé
Nom_Auteur Titre
Id_livre
Id_Auteur
1,n 1,1
Auteur Écrire Livre
Pénom_Auteur
Année_Édition
Adresse_Auteur
Modélisation des données
Exercices:
1. Proposer un diagramme du modèle Entité-Association représentant la relation entre
Personne, Voiture, et Fabricant ?
2. À partir de ce diagramme, répondre aux questions
suivantes : Auteur Livre
1,n 1,1 NumLivre
IdAuteur
Écrit Titre
Nom
1. Est-il possible d’avoir des auteurs homonymes ? Prénom
1,1
2. Un auteur peut-il écrit plusieurs livre ?
3. Un livre peut-il correspondre à plusieurs auteurs ?
Édite
4. Est-il possible qu'un éditeur ne publie aucun livre ?
1,n
Dépôt
5. Est-il possible de stocker un livre dans plusieurs Éditeur
dépôts ? Num_Dép
ôt Nom IdÉditeur
6. Est-il possible qu’un dépôt peut être utilisé par de Adresse Nom
nombreux éditeurs ?
Modélisation des données
Corrections:
1. Proposer un diagramme du modèle Entité-Association représentant la relation entre Personne,
Voiture, et Fabricant ?
Modélisation des données
Corrections:
1. Oui, car le nom n’identifie pas les auteurs. Il peut
donc y avoir des homonymes.
2. Oui, il peut le faire car sa cardinalité maximale vaut n.
3. Non, chaque livre correspond à un et un seule auteur,
car sa cardinalité minimale et maximale valent 1.
4. Non, chaque éditeur a publié au moins un livre, car
sa cardinalité minimale prend la valeur 1.
5. Oui, il peut le faire car sa cardinalité maximale vaut
n.
6. Oui, un dépôt peut être utilisé par de nombreux
éditeurs, car sa cardinalité maximale vaut n.
Concepts de base: Les dimensions d'une
application
Langages de programmation
Traitements Manipulation de données
SGBD
Données Bases de Données
Concepts de base: architecture
client/serveur
Une application qui utilise SQL Server s’appuie sur une architecture
client/serveur
Client: chargé de l’interface (exécuté sur plusieurs postes clients
simultanément)
Serveur: chargé de la gestion des données
Concepts de base: Base de données
Règle numéro 1 :
a) Chaque entité d’un modèle E/A devient une relation, c’est à
dire une table.
b) Son identifiant devient la clé primaire de la relation.
c) Les autres propriétés deviennent les attributs de la
relation.
Exemple :
Entité
Relation SGBD
Personne
CIN Nom Prénom
CIN
MA345 Jean Jorden
Nom Personne (CIN, Nom, Prénom, Age)
Prénom …
Règles de passage du E/A au MR
Règle numéro 2 :
Une association de type 1:N :
a) se traduit par la création d’une clé étrangère dans la
relation correspondante à l’entité côté « 1 ».
b) cette clé étrangère référence la clé primaire de la relation
correspondant à l’entité côté « N ».
Exemple :
La clé étrangère est précédée d'un #
1:N
Etudiant Filière
1,1 1,n Schémas
CNE IdFilière
Appartient Relationnels ✓ Etudiant (CNE, Nom, Prénom, #IdFilière)
Nom Nom
Prénom Nb-Etud
✓Filière (IdFilière, Nom, Nb-Etud)
Règles de passage du E/A au MR
Règle numéro 3 :
Une association de type N:N :
a)Création d’une nouvelle table dont la clé primaire est l'ensemble
des identifiants des entités associées.
b)Toute propriété de l'association devient attribut de la nouvelle
table.
Exemple :
N:N
Règle numéro 4 :
Une association de type 1:1 :
a) Cela dépend fonctionnellement sur l’entité la plus important.
Exemple :
Règle numéro 4 :
Une association de type 1:1 :
a) Cela dépend fonctionnellement sur l’entité la plus important.
Exemple :
Règle numéro 4 :
Une association de type 1:1 :
a) Cela dépend fonctionnellement sur l’entité la plus important.
Exemple :
3
Si le modèle peut évoluer ou si on a une distinction fonctionnelle
forte entre les entités:
1:1 :
Chauffeur (IdChauf, Nom, Prénom, #IdTaxi)
Chauffeur Taxi Schémas
IdChauf 1,1 0,1 IdTaxi Relationnels Taxi (IdTaxi, Marque, Type)
Conduit
Nom Marque Ou
Prénom Type Chauffeur (IdChauf, Nom, Prénom)
Taxi (IdTaxi, Marque, Type, #IdChauf)
Exercice
Établir le modèle MR (schémas relationnels) du modèle E/A suivant :
Corrigé
Formes normales :
✓ Les formes normales s’appliquent aux entités et aux associations.
✓ Elles ont pour objectif de vérifier la non redondance de l’information
dans le modèle et de proposer les transformations applicables sans
perte d’informations.
Qualité d’un schéma relationnel :
formes normales
Table Cours
Table Professeur
Qualité d’un schéma relationnel :
formes normales
La région
Clé primaire détermine le pays
Exemple
Personne(N SS, Pays, Nom, Région)
Clé primaire
La région
détermine le pays
BCFN
Soient la relation
R1(NumMatriculeOuvrier,NomOuvrier,NumRéparation,
NumMachine,TempsPassé,Dateréparation,NomMachine,
NumAtelier,NomAtelier)
Formalisme : Exemple :
R1 Nom Prénom
R = R1 U R2
NAJI Kaouter
ou RABEH Samir
R Nom Prénom
NAJI Kaouter
R = UNION (R1 , R2) LIMAM Fadi
RABEH Samir
LIMAM Fadi
LMALKI Mounir
Algèbre relationnelle: Intersection ∩
L'intersection de deux relations est l'ensemble des occurrences
qui sont présentes dans les deux relations. C’est la traduction du
ET logique.
.
Formalisme : Exemple : R1 Nom Prénom
NAJI Kaouter
R = R1 ∩ R2 RABEH Samir
ou LIMAM Fadi
R Nom Prénom
NAJI Kaouter
NAJI Rajae
LMALKI Mounir
Algèbre relationnelle: Différence –
La différence entre deux tables est l'ensemble des occurrences
qui appartiennent à une table sans appartenir à la seconde.
Attention, cette opération a un sens.
R1 Nom Prénom
Formalisme : Exemple :
NAJI Kaouter
R = R1 - R2 RABEH Samir
R1-R2 Nom Prénom
RABEH Samir
ou LIMAM Fadi
ou NAJI
RABEH
Kaouter
Samir
R2 Age Ville
NAJI Kaouter 21 Rissani
19 Er-riche
21 Rissani RABEH Samir 19 Er-riche
Formalisme :
Exemple : R1 Nom Prénom Age Ville
R2 = SELECTION (R1, critère(s)) SABER IMRANE 19 Er-riche
✓σ Ville = ‘Rissani(R1)
Critères de sélection : R2 Nom Prénom Age Ville
✓SELECTION (R1, Ville =
Opérateurs de comparaison : ‘Rissani
NAJI Kaouter 21 Rissani
Opérateurs logiques :
✓ ET, OU (entre deux comparaisons)
✓ NON (pour renverser la comparaison)
Algèbre relationnelle: Projection Π
La projection d'une relation consiste en la mise en place d'une
nouvelle relation en ne retenant que certaines colonnes
(attributs) et en supprimant les occurrences en double.
Formalisme : R1 Nom Prénom Age Ville
Exemple :
R2 = PROJECTION (R1, SABER IMRANE 19 Er-riche
NAJI Kaouter 21 Rissani
colonne 1, colonne 2, … ) SABER IMRANE 19 Er-riche
(R1) SABER 19
NAJI 21
SABER 14
R = R1/ R2 R1/R2 Nom
NAJI 17
R2 Note
RIDANI 12 09 SABER
14
JABRI 09
NAJI 14
Remarque : SABER 09
▪ L’opération Division est non commutative
Algèbre relationnelle: Jointure ►◄
La jointure consiste à créer une nouvelle table à partir de deux
tables ayant un champ commun (attribut) et vérifiant un critère
de jointure.
Formalisme :
R = JOINTURE R1, R2 (R1.attr_jointure op_comparaison R2.attr_jointure)
R = R1 ►◄ R2 (R1.attr_jointure op_comparaison R2.attr_jointure)