尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare une entreprise Scribd logo
Bases de données sous
Access
Plan
⚫Initiation aux bases de données
⚫Application sous Access
⚫Structure d’une base de données
⚫Langages de manipulation de données
⚫Algèbre relationnelle (théorique)
⚫QBE d’Access
⚫SQL
INITIATION AUX BASES DE DONNEES
Initiation aux bases de données
• Une base de données est un ensemble ou une
collection structurée de données.
• Il existe plusieurs types de bases de données (BD’s) qui
se distinguent par la façon dont les données sont
structurées.
• BD’s relationnelles, objet, hiérarchiques, réseau,
fonctionnelles, déductives …
• 95% des BD’s sont relationnelles
• Oracle, société éditrice de logiciels pour bases de
données est la deuxième plus grosse société après
Microsoft.
Structure d’une BD relationnelle
⚫Une BD relationnelle est composée d’un ensemble de
tables (ou relations).
⚫Une table est composée de
⚫Lignes qu’on appelle enregistrements (ou tuples)
⚫Colonnes représentant chacune un champ (ou un attribut).
⚫Chaque table a un nom.
⚫Chaque champ a un nom et un type
⚫Texte, numérique, date, …
Exemple de table
N°Commande DateCommande Montant
27 13/2/2007 120
65 12/1/2008 34
2 10/06/2006 27
34 14/12/2007 1500
Commande
Nom de la table 3 champs
4 enregistrements N°Commande est du type numérique entier
Montant est du type numérique réel
DateCommande est du type date
Quelques contraintes
⚫Deux tables d’une même base de données ne peuvent
pas avoir le même nom.
⚫Deux champs de la même table ne peuvent pas avoir
le même nom.
⚫Un même champ peut être présent dans plusieurs
tables.
Exemple de base de données
Livre
N°Livre TitreLivre
10 La monnaie
25 La finance
Auteur
N°Auteur NomAuteur
1 Dupont
2 Durand
3 Martin
LivreAuteur
N°Livre N°Auteur
10 1
25 1
25 3
SGBD
⚫ Les logiciels qui permettent de gérer des bases de données
sont appelés « Systèmes de Gestion de Bases de
Données ».
⚫ Acces est un SGBD relationnel.
⚫ MySQL, SQL Server, Postgres, Oracle, DB2, …
⚫ Un SGBD permet de
⚫ Créer une BD
⚫ Modifier la structure des tables
⚫ Interroger la BD
⚫ Modifier la BD
⚫ …
Création d’une base de données
1. Lancer Access.
2. Demander la création d’une nouvelle base.
3. Donner un nom à votre base.
4. Ça y est, votre BD est créée mais pour l’instant
elle ne contient aucune information.
5. Noter qu’Access aura créé un fichier d’une taille
non négligeable!
Création d’une table
Création d’une table
La liste des champs
Commentairessur le champ
Le type de chaque champ
Création d’une table
⚫Une fois qu’on a fini de taper tous les champs composant la
table,
⚫Fermer la fenêtre de création,
⚫Access demande alors le nom de la table,
⚫Access va demander aussi de préciser la clé primaire. On
reviendra plus tard sur cette notion,
⚫Ça y est, notre table « Album » est créée,
⚫Pour afficher son contenu, il suffit de cliquer deux fois dessus,
⚫On peut ensuite saisir, supprimer, modifier des enregistrements.
Les types des champs
⚫ NuméroAuto : numéro incrémenté à chaque insertion d’un nouvel
enregistrement.
⚫ Numérique: C’est à l’utilisateur de taper sa valeur. Par défaut, il s’agit d’un
entier mais on peut préciser si c’est un réel.
⚫ Texte : c’est une chaîne de caractères. On peut préciser sa taille.
⚫ Oui/Non : ça correspond aux champs qui ne peuvent prendre que l’une des
deux valeurs OUI ou NON.
⚫ Date/Heure : Type des champs qui indiquent une notion de temps. Plusieurs
formats sont disponibles.
⚫ D’autres types encore mais rarement utilisés.
Propriétés d’un champ
Les propriétés qu’on peut
préciser pour un champ
Propriétés du type Texte
⚫ Les plus utilisées :
⚫Taille du texte : en nombre de caractères maximum,
⚫Valeur par défaut : valeur prise par ce champs si l’utilisateur,
lors de l’insertion d’un nouvel enregistrement ne précise pas
de valeur,
⚫Null interdit : Est-ce que l’utilisateur est obligé de donner une
valeur pour ce champ ou pas,
⚫Indexé : permet d’optimiser la recherche sur ce champ. On
peut utiliser cette propriété pour exiger que les valeurs du
champ doivent être uniques (sans doublons),
⚫Liste de choix : permet de préciser l’ensemble des valeurs
correctes.
Propriétés du type numérique
Entier
Réel
Notion de clé primaire
⚫Une clé primaire dans une table est
⚫Un champ ou un ensemble de champs
⚫Qui permet d’identifier chaque ligne dans la table
⚫Deux enregistrements ne doivent pas avoir la même valeur
pour la clé
⚫Par exemple: dans la table Album,
⚫le champ NumAlbum est une clé primaire car deux albums ne
doivent pas avoir le même numéro.
⚫Le champ Année n’est pas une clé primaire car deux albums
peuvent avoir la même année de sortie.
Conséquences de la déclaration d’une
clé primaire
⚫Le système (Access) va refuser l’insertion d’un nouvel
enregistrement si cela viole l’unicité de valeur pour la clé
primaire
⚫S’il y a déjà un enregistrement avec la même valeur pour la clé
primaire, le système va refuser la modification de la clé
primaire si la nouvelle valeur existe déjà.
Déclaration d’une clé primaire
1. Sélectionner le ou les champs formant la clé
2. Cliquer ici
Notion de clé étrangère
⚫Un champ (ou ensemble de champs) est clé
étrangère dans une table s’il fait référence à une clé
primaire dans une autre table.
⚫Par exemple
⚫le champ NumArtiste est clé primaire dans la table Artiste,
⚫ce champ est donc clé étrangère dans la table Album.
⚫On parle dans ce cas d’intégrité référentielle.
Conséquences de la déclaration d’une
clé étrangère
⚫ Le système va refuser l’insertion d’un album si son NumArtiste
n’existe pas dans la table Artiste.
⚫ Le système va refuser la suppression d’un artiste s’il existe dans
la table Album des enregistrements qui lui sont associés.
⚫ Le système va refuser la modification d’un NumArtiste dans
Album si la nouvelle valeur n’est pas présente dans Artiste.
⚫ Le système va refuser la modification d’un NumArtiste dans
Artiste s’il y a déjà des albums qui sont associés à l’ancienne
valeur.
Création des clés étrangères (1)
1. Cliquer sur le
bouton « Relations »
2. Afficher les deux
tables Artiste et
Album
Création des clés étrangères (2)
En déplaçant NumArtiste
d’Artiste sur NumArtiste
d’Album, on obtient cette fenêtre.
Cocher cette case
Création des clés étrangères (3)
Cette relation signifie qu’un artiste peut être
associé à plusieurs albums et un album est
associé à un seul artiste.
INTERROGATION D’UNE BD
Requêtes sous Access
QBE : INTERFACE GRAPHIQUE DE FORMULATION DES
REQUETES
TABLES UTILISEES
Colonnes de la table résultat
Conditions de restriction
Afficher le titre et l’année de sortie de tous les albums
Cliquer ici pour exécuter
Cases à cocher pour afficher ces champs
Requêtes sous Access : projection
Afficher les albums sortis après 1975
On affiche tous les champs
Critère ou condition de sélection
Requêtes sous Access : sélection
Requêtes sous Access : sélection
Afficher les albums sortis après 1975 (solution 2)
Case non cochée sinon Année sera affichée 2 fois
Album.* désigne tous les champs de
la table Album
Requêtes sous Access : sélection + projection
Afficher les titres des albums sortis après 1975
Le titre est affiché
Année n’est pas affichée mais sert
à exprimer le critère de sélection
Requêtes sous Access : sélection complexe
Afficher les albums de l’artiste 2 sortis après 1975
Deux conditions sur la même ligne sont composées par un ET
Afficher les albums sortis entre 1975 et 1980
Requêtes sous Access : sélection complexe
Afficher les albums sortis entre 1975 et 1980
Requêtes sous Access : sélection complexe
Afficher les albums sortis en 1975 ou en 1980
Ligne permettant d’exprimer le OU
Requêtes sous Access : sélection complexe
Afficher les albums sortis en 1975 ou en 1980
Requêtes sous Access : sélection complexe
Afficher les années de sortie des albums
Une même année
peut apparaitre
plusieurs fois dans
le résultat si
plusieurs albums
sont sortis durant
cette année.
Requêtes sous Access : projection
Afficher les années de sortie des albums
Afficher les Propriétés avec un clic droit ici
Mettre à OUI la propriété « valeurs distinctes »
Requêtes sous Access : projection
Afficher les titres des albums triés par ordre croissant
Permet de spécifier le
type de tri que l’on veut
Requêtes sous Access : projection
Pour chaque album, donner son titre et le nom de son auteur
Lien traduisant la jointure
Requêtes sous Access : jointure
Pour chaque album, donner son titre et le nom de son auteur
Solution équivalente avec
produit cartésien et sélection
Requêtes sous Access : jointure
Afficher le nombre d’albums
Cliquer ici pour afficher la
ligne « opération »
On choisit de compter le
nombre de numéros d’albums
Renommage
Requêtes sous Access : opérations
Afficher le nombre d’albums
Renommage
Requêtes sous Access : jointure
L’année du plus ancien album
Requêtes sous Access : jointure
Les opérations d’Access
Les plus utilisées :
Max : la valeur maximale
Min : la valeur minimale
Compte : compter le nombre de valeurs
Moyenne : la valeur moyenne
Somme : la somme des valeurs
Regroupement : permet de regrouper des enregistrements
Où : permet de poser des conditions sur des enregistrements
Gestion des valeurs distinctes
Le nombre d’années différentes
Cette requête affiche le nombre
d’années. Une même année sera
comptée autant de fois qu’elle
apparaît dans la table Album.
Gestion des valeurs distinctes
Le nombre d’années différentes (1)
Créer d’abord une requête qui affiche les
années distinctes puis l’enregistrer par
exemple sous le nom AnnéesDistinctes.
Gestion des valeurs distinctes
Le nombre d’années différentes (2)
Compter le nombre
d’années qu’il y a dans
« AnnéesDistinctes ».
Noter que la table
qu’on a affichée est
en fait une requête.
Opérations sous Access
Les albums les plus anciens :
Ce sont ceux dont l’année de sortie est égale à l’année minimale
1. Requête qui affiche l’année minimale (Requête « AnnéeMin »)
2. Utiliser cette requête pour comparer l’année de sortie de l’album
1
2
Opérations sous Access
Les albums qui ne sont pas les plus anciens :
Ce sont ceux dont l’année de sortie est différente de l’année
minimale
1. Requête qui affiche l’année minimale (Requête « AnnéeMin »)
2. Utiliser cette requête pour comparer l’année de sortie de l’album
1
2
Le regroupement
Pour chaque artiste, afficher son numéro ainsi que le nombre
de ses albums
On regroupe les lignes en fonction
du NumArtiste : Deux lignes qui ont
le même NumArtiste seront dans le
même groupe.
Pour chaque groupe, on
compte le nombre de
NumAlbum.
NumAlbum Titre Année NumArtiste
23 Hier 1960 123
27 Suzanne 1976 25
36 Demain 1974 123
67 Montreal 1974 25
137 Thriller 1983 22
NumAlbum Titre Année NumArtiste
23 Hier 1960 123
36 Demain 1974 123
27 Suzanne 1976 25
67 Montreal 1974 25
137 Thriller 1983 22
Après
regroupement
sur NumArtiste
Regroupements
A B C
1 2 1
1 1 2
2 2 1
1 3 2
A B C
1 2 1
1 1 2
1 3 2
2 2 1
A B C
1 1 2
1 2 1
2 2 1
1 3 2
Par A. On
obtient 2
groupes
Par B. On
obtient 3
groupes
Le regroupement
Pour chaque artiste, afficher son nom ainsi que le nombre de
ses albums
On regroupe les lignes en fonction
du Nom.
Pour chaque groupe, on
compte le nombre de
NumAlbum.
Le regroupement
Afficher le numéro des artistes qui ont plus d’un album
On regroupe les lignes en fonction
du NumArtiste.
Pour chaque groupe, on
compte le nombre de
NumAlbum et on vérifie si
ce nombre est supérieur à 1.
Le regroupement
Afficher le numéro des artistes qui ont au moins un album
dont le numéro est supérieur à 1
On regroupe les lignes en fonction
du NumArtiste
Toutes les lignes où
NumAlbum est ≤ 1 sont
d’abord supprimées
Le regroupement
Quand on utilise le regroupement, il y a deux types de
conditions (critères) :
• Condition sur les groupes : Utiliser une des fonctions de
calcul Min, Max, Moyenne, Somme, Compte, …
• Condition sur les lignes : utiliser l’opération OÙ
Les critères de sélection
La différence sous Access
⚫Quels sont les numéros des artistes pour lesquels on n’a
pas enregistré d’albums ?
⚫Projection(Artiste; NumArtiste) = R1
⚫Projection (Album; NumArtiste) = R2
⚫Différence(R1; R2) = résultat
⚫Sous Access, il n’est pas possible d’exprimer
directement la différence. Il faut passer par la « jointure
externe ».
La jointure externe
A R1.B R2.B C
a1 b1 b1 c1
a2 b2
R1 A B
a1 b1
a2 b2
R2 B C
b1 c1
b3 c3
• jointureExterne(R1; R2) = R
• R est obtenue en joignant les lignes de R1 avec les
lignes de R2
• Les lignes de R1 qui ne sont pas joignables seront
aussi présentes mais avec aucune valeur pour les
champs de R2 (valeur NULL)
R
La jointure externe
R1 A B
a1 b1
a2 b2
R2 B C
b1 c1
b3 c3
Quels sont les B de R1 qui ne sont pas dans R2 ? Ce sont
ceux pour qui C=NULL dans R
Sélection(R; C=NULL) = R’
Projection(R’; R1.B) = résultat
Résultat = projection(R1,B) – projection(R2, B)
R
A R1.B R2.B C
a1 b1 b1 c1
a2 b2
La différence
 Quels sont les noms des artistes qui n’ont pas
enregistré d’albums ?
Cliquer sur la jointure
avec le bouton droit afin
de changer ses propriétés
 Quels sont les noms des artistes qui n’ont
pas enregistré d’albums ?
La différence
 Quels sont les noms des artistes qui n’ont
pas enregistré d’albums ?
Nous avons une flèche
dirigée de Artiste vers
Album
La différence
L’intersection
⚫Quelles sont les personnes qui sont en même temps
gérantes et occupantes d’un appart ?
⚫C’est l’intersection des champs NomGérant et
NomOccupant.
⚫Toute intersection peut être exprimée par une jointure
⚫Intersection(R1;R2)=jointure(R1;R2)
⚫L’inverse n’est pas vrai. Certaines jointures ne peuvent
pas être exprimées par une intersection.
L’intersection
Quelles sont les personnes qui sont en même temps gérantes et
occupantes d’un appart ?
L’union
⚫Il n’est pas possible d’exprimer l’union en utilisant le
QBE d’Access.
⚫Il faut utiliser le langage SQL.
⚫Exemple : Le NSS de toutes les personnes:
SELECT NSS FROM étudiant
UNION
SELECT NSS FROM employé
Requête de mise à jour
⚫On veut ajouter 1m2 à la superficie de tous les
appartements:
⚫On peut le faire à la main (difficile s’il y en a des centaines).
⚫On peut le faire par une requête de mise à jour.
Requête de mise à jour
Choisir le type « Requête de
Mise à jour »
On met à jour le champ
Superficie. Sa nouvelle valeur
est l’ancienne + 1
Requête ajout
⚫ On veut créer une table « grandsApparts » qui contient ceux
ayant une superficie > 100.
⚫ Copier/Coller la table Appart pour obtenir une nouvelle table
ayant la même structure.
Requête ajout

Contenu connexe

Similaire à Access_Cours.pptx pour débutant manipulation de données access

Access tables
Access tablesAccess tables
Access tables
hassan1488
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
Abdoulaye Dieng
 
Introduction au langage SQL
Introduction au langage SQLIntroduction au langage SQL
Introduction au langage SQL
Olivier Le Goaër
 
coursaccess.pdf
coursaccess.pdfcoursaccess.pdf
coursaccess.pdf
AyoubElKhatib
 
" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT "
" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT  "" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT  "
" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT "
FAO
 
Formation access
Formation accessFormation access
Formation access
bouyahia76
 
4-TP BD.pptx
4-TP BD.pptx4-TP BD.pptx
4-TP BD.pptx
salimtayaadine
 
Support_Cours_SQL.ppt
Support_Cours_SQL.pptSupport_Cours_SQL.ppt
Support_Cours_SQL.ppt
SiwarAbbes1
 
Chapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdfChapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdf
RihabBENLAMINE
 
06 visual basic .net - les structures de donnees, les enumerations de constan...
06 visual basic .net - les structures de donnees, les enumerations de constan...06 visual basic .net - les structures de donnees, les enumerations de constan...
06 visual basic .net - les structures de donnees, les enumerations de constan...
Hamza SAID
 
Tpdba1
Tpdba1Tpdba1
Tpdba1infcom
 
Support de cours ACCESS
Support de cours ACCESSSupport de cours ACCESS
Support de cours ACCESS
Chingongou ­
 
Theme 9(bis)
Theme 9(bis)Theme 9(bis)
Theme 9(bis)salmazen
 
Cours Big Data Chap6
Cours Big Data Chap6Cours Big Data Chap6
Cours Big Data Chap6
Amal Abid
 
"Aperçu globale du Site web du Nouveau CountrySTAT"
"Aperçu globale du Site web du Nouveau CountrySTAT""Aperçu globale du Site web du Nouveau CountrySTAT"
"Aperçu globale du Site web du Nouveau CountrySTAT"
FAO
 
Présentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdfPrésentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdf
khalidmoussaid4
 
Support formation vidéo : SQL pour les (grands) débutants
Support formation vidéo : SQL pour les (grands) débutants Support formation vidéo : SQL pour les (grands) débutants
Support formation vidéo : SQL pour les (grands) débutants
SmartnSkilled
 
Cours BASE de DONNES.pdf
Cours BASE de DONNES.pdfCours BASE de DONNES.pdf
Cours BASE de DONNES.pdf
ManelHamdi7
 

Similaire à Access_Cours.pptx pour débutant manipulation de données access (20)

Access tables
Access tablesAccess tables
Access tables
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
 
09coursaccess
09coursaccess09coursaccess
09coursaccess
 
Introduction au langage SQL
Introduction au langage SQLIntroduction au langage SQL
Introduction au langage SQL
 
coursaccess.pdf
coursaccess.pdfcoursaccess.pdf
coursaccess.pdf
 
" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT "
" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT  "" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT  "
" Aperçu globale de l’Editeur DSD dans la nouvelle plateforme CountrySTAT "
 
Formation access
Formation accessFormation access
Formation access
 
4-TP BD.pptx
4-TP BD.pptx4-TP BD.pptx
4-TP BD.pptx
 
Support_Cours_SQL.ppt
Support_Cours_SQL.pptSupport_Cours_SQL.ppt
Support_Cours_SQL.ppt
 
Chapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdfChapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdf
 
06 visual basic .net - les structures de donnees, les enumerations de constan...
06 visual basic .net - les structures de donnees, les enumerations de constan...06 visual basic .net - les structures de donnees, les enumerations de constan...
06 visual basic .net - les structures de donnees, les enumerations de constan...
 
Tpdba1
Tpdba1Tpdba1
Tpdba1
 
Support de cours ACCESS
Support de cours ACCESSSupport de cours ACCESS
Support de cours ACCESS
 
Theme 9(bis)
Theme 9(bis)Theme 9(bis)
Theme 9(bis)
 
SQL partie III
SQL partie IIISQL partie III
SQL partie III
 
Cours Big Data Chap6
Cours Big Data Chap6Cours Big Data Chap6
Cours Big Data Chap6
 
"Aperçu globale du Site web du Nouveau CountrySTAT"
"Aperçu globale du Site web du Nouveau CountrySTAT""Aperçu globale du Site web du Nouveau CountrySTAT"
"Aperçu globale du Site web du Nouveau CountrySTAT"
 
Présentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdfPrésentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdf
 
Support formation vidéo : SQL pour les (grands) débutants
Support formation vidéo : SQL pour les (grands) débutants Support formation vidéo : SQL pour les (grands) débutants
Support formation vidéo : SQL pour les (grands) débutants
 
Cours BASE de DONNES.pdf
Cours BASE de DONNES.pdfCours BASE de DONNES.pdf
Cours BASE de DONNES.pdf
 

Dernier

BATIMENT 5.pptx. Fil français tourné en France
BATIMENT 5.pptx. Fil français tourné en FranceBATIMENT 5.pptx. Fil français tourné en France
BATIMENT 5.pptx. Fil français tourné en France
Txaruka
 
domaine d'Audit_interne, types et avantages .pdf
domaine d'Audit_interne, types et avantages .pdfdomaine d'Audit_interne, types et avantages .pdf
domaine d'Audit_interne, types et avantages .pdf
ChaabenInes1
 
Journée France Numérique Ensemble de l'Ardèche
Journée France Numérique Ensemble de l'ArdècheJournée France Numérique Ensemble de l'Ardèche
Journée France Numérique Ensemble de l'Ardèche
inforoutes
 
presentaion_projet_fin_etude_app_mobile.pptx
presentaion_projet_fin_etude_app_mobile.pptxpresentaion_projet_fin_etude_app_mobile.pptx
presentaion_projet_fin_etude_app_mobile.pptx
noreplycoloc24
 
Cahier d'activité Scratch pour les KIDS Dès 8 ans
Cahier d'activité Scratch pour les KIDS Dès 8 ansCahier d'activité Scratch pour les KIDS Dès 8 ans
Cahier d'activité Scratch pour les KIDS Dès 8 ans
HamdiBouneb
 
Presentation powerpoint sur la filiere electrotechnique
Presentation powerpoint sur la filiere electrotechniquePresentation powerpoint sur la filiere electrotechnique
Presentation powerpoint sur la filiere electrotechnique
mohammadaminejouini
 
13560359- cours Marketing-Des-Services.pdf
13560359- cours Marketing-Des-Services.pdf13560359- cours Marketing-Des-Services.pdf
13560359- cours Marketing-Des-Services.pdf
FatimazahraB1
 
Webinaire Cohésion - Optimisez vos communications par courriel et clavardage
Webinaire Cohésion - Optimisez vos communications par courriel et clavardageWebinaire Cohésion - Optimisez vos communications par courriel et clavardage
Webinaire Cohésion - Optimisez vos communications par courriel et clavardage
Technologia Formation
 
géodynamique externe première partie imp
géodynamique  externe première partie impgéodynamique  externe première partie imp
géodynamique externe première partie imp
MacLeo1
 
Réaliser ses newsletters et gérer les envois.pdf
Réaliser ses newsletters et gérer les envois.pdfRéaliser ses newsletters et gérer les envois.pdf
Réaliser ses newsletters et gérer les envois.pdf
Vanessa Sant'André
 
Proyecto Erasmus Jardineros y jardineras de paz
Proyecto Erasmus Jardineros y jardineras de pazProyecto Erasmus Jardineros y jardineras de paz
Proyecto Erasmus Jardineros y jardineras de paz
Morzadec Cécile
 
Margaux Laurens - Neel.pptx
Margaux        Laurens     -     Neel.pptxMargaux        Laurens     -     Neel.pptx
Margaux Laurens - Neel.pptx
Txaruka
 
Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...
Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...
Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...
M2i Formation
 
Veille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdfVeille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdf
frizzole
 

Dernier (14)

BATIMENT 5.pptx. Fil français tourné en France
BATIMENT 5.pptx. Fil français tourné en FranceBATIMENT 5.pptx. Fil français tourné en France
BATIMENT 5.pptx. Fil français tourné en France
 
domaine d'Audit_interne, types et avantages .pdf
domaine d'Audit_interne, types et avantages .pdfdomaine d'Audit_interne, types et avantages .pdf
domaine d'Audit_interne, types et avantages .pdf
 
Journée France Numérique Ensemble de l'Ardèche
Journée France Numérique Ensemble de l'ArdècheJournée France Numérique Ensemble de l'Ardèche
Journée France Numérique Ensemble de l'Ardèche
 
presentaion_projet_fin_etude_app_mobile.pptx
presentaion_projet_fin_etude_app_mobile.pptxpresentaion_projet_fin_etude_app_mobile.pptx
presentaion_projet_fin_etude_app_mobile.pptx
 
Cahier d'activité Scratch pour les KIDS Dès 8 ans
Cahier d'activité Scratch pour les KIDS Dès 8 ansCahier d'activité Scratch pour les KIDS Dès 8 ans
Cahier d'activité Scratch pour les KIDS Dès 8 ans
 
Presentation powerpoint sur la filiere electrotechnique
Presentation powerpoint sur la filiere electrotechniquePresentation powerpoint sur la filiere electrotechnique
Presentation powerpoint sur la filiere electrotechnique
 
13560359- cours Marketing-Des-Services.pdf
13560359- cours Marketing-Des-Services.pdf13560359- cours Marketing-Des-Services.pdf
13560359- cours Marketing-Des-Services.pdf
 
Webinaire Cohésion - Optimisez vos communications par courriel et clavardage
Webinaire Cohésion - Optimisez vos communications par courriel et clavardageWebinaire Cohésion - Optimisez vos communications par courriel et clavardage
Webinaire Cohésion - Optimisez vos communications par courriel et clavardage
 
géodynamique externe première partie imp
géodynamique  externe première partie impgéodynamique  externe première partie imp
géodynamique externe première partie imp
 
Réaliser ses newsletters et gérer les envois.pdf
Réaliser ses newsletters et gérer les envois.pdfRéaliser ses newsletters et gérer les envois.pdf
Réaliser ses newsletters et gérer les envois.pdf
 
Proyecto Erasmus Jardineros y jardineras de paz
Proyecto Erasmus Jardineros y jardineras de pazProyecto Erasmus Jardineros y jardineras de paz
Proyecto Erasmus Jardineros y jardineras de paz
 
Margaux Laurens - Neel.pptx
Margaux        Laurens     -     Neel.pptxMargaux        Laurens     -     Neel.pptx
Margaux Laurens - Neel.pptx
 
Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...
Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...
Formation M2i - 5 stratégies digitales innovantes pour booster la Qualité de ...
 
Veille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdfVeille Audocdi 90 - mois de juin 2024.pdf
Veille Audocdi 90 - mois de juin 2024.pdf
 

Access_Cours.pptx pour débutant manipulation de données access

  • 1. Bases de données sous Access
  • 2. Plan ⚫Initiation aux bases de données ⚫Application sous Access ⚫Structure d’une base de données ⚫Langages de manipulation de données ⚫Algèbre relationnelle (théorique) ⚫QBE d’Access ⚫SQL
  • 3. INITIATION AUX BASES DE DONNEES
  • 4. Initiation aux bases de données • Une base de données est un ensemble ou une collection structurée de données. • Il existe plusieurs types de bases de données (BD’s) qui se distinguent par la façon dont les données sont structurées. • BD’s relationnelles, objet, hiérarchiques, réseau, fonctionnelles, déductives … • 95% des BD’s sont relationnelles • Oracle, société éditrice de logiciels pour bases de données est la deuxième plus grosse société après Microsoft.
  • 5. Structure d’une BD relationnelle ⚫Une BD relationnelle est composée d’un ensemble de tables (ou relations). ⚫Une table est composée de ⚫Lignes qu’on appelle enregistrements (ou tuples) ⚫Colonnes représentant chacune un champ (ou un attribut). ⚫Chaque table a un nom. ⚫Chaque champ a un nom et un type ⚫Texte, numérique, date, …
  • 6. Exemple de table N°Commande DateCommande Montant 27 13/2/2007 120 65 12/1/2008 34 2 10/06/2006 27 34 14/12/2007 1500 Commande Nom de la table 3 champs 4 enregistrements N°Commande est du type numérique entier Montant est du type numérique réel DateCommande est du type date
  • 7. Quelques contraintes ⚫Deux tables d’une même base de données ne peuvent pas avoir le même nom. ⚫Deux champs de la même table ne peuvent pas avoir le même nom. ⚫Un même champ peut être présent dans plusieurs tables.
  • 8. Exemple de base de données Livre N°Livre TitreLivre 10 La monnaie 25 La finance Auteur N°Auteur NomAuteur 1 Dupont 2 Durand 3 Martin LivreAuteur N°Livre N°Auteur 10 1 25 1 25 3
  • 9. SGBD ⚫ Les logiciels qui permettent de gérer des bases de données sont appelés « Systèmes de Gestion de Bases de Données ». ⚫ Acces est un SGBD relationnel. ⚫ MySQL, SQL Server, Postgres, Oracle, DB2, … ⚫ Un SGBD permet de ⚫ Créer une BD ⚫ Modifier la structure des tables ⚫ Interroger la BD ⚫ Modifier la BD ⚫ …
  • 10. Création d’une base de données 1. Lancer Access. 2. Demander la création d’une nouvelle base. 3. Donner un nom à votre base. 4. Ça y est, votre BD est créée mais pour l’instant elle ne contient aucune information. 5. Noter qu’Access aura créé un fichier d’une taille non négligeable!
  • 12. Création d’une table La liste des champs Commentairessur le champ Le type de chaque champ
  • 13. Création d’une table ⚫Une fois qu’on a fini de taper tous les champs composant la table, ⚫Fermer la fenêtre de création, ⚫Access demande alors le nom de la table, ⚫Access va demander aussi de préciser la clé primaire. On reviendra plus tard sur cette notion, ⚫Ça y est, notre table « Album » est créée, ⚫Pour afficher son contenu, il suffit de cliquer deux fois dessus, ⚫On peut ensuite saisir, supprimer, modifier des enregistrements.
  • 14. Les types des champs ⚫ NuméroAuto : numéro incrémenté à chaque insertion d’un nouvel enregistrement. ⚫ Numérique: C’est à l’utilisateur de taper sa valeur. Par défaut, il s’agit d’un entier mais on peut préciser si c’est un réel. ⚫ Texte : c’est une chaîne de caractères. On peut préciser sa taille. ⚫ Oui/Non : ça correspond aux champs qui ne peuvent prendre que l’une des deux valeurs OUI ou NON. ⚫ Date/Heure : Type des champs qui indiquent une notion de temps. Plusieurs formats sont disponibles. ⚫ D’autres types encore mais rarement utilisés.
  • 15. Propriétés d’un champ Les propriétés qu’on peut préciser pour un champ
  • 16. Propriétés du type Texte ⚫ Les plus utilisées : ⚫Taille du texte : en nombre de caractères maximum, ⚫Valeur par défaut : valeur prise par ce champs si l’utilisateur, lors de l’insertion d’un nouvel enregistrement ne précise pas de valeur, ⚫Null interdit : Est-ce que l’utilisateur est obligé de donner une valeur pour ce champ ou pas, ⚫Indexé : permet d’optimiser la recherche sur ce champ. On peut utiliser cette propriété pour exiger que les valeurs du champ doivent être uniques (sans doublons), ⚫Liste de choix : permet de préciser l’ensemble des valeurs correctes.
  • 17. Propriétés du type numérique Entier Réel
  • 18. Notion de clé primaire ⚫Une clé primaire dans une table est ⚫Un champ ou un ensemble de champs ⚫Qui permet d’identifier chaque ligne dans la table ⚫Deux enregistrements ne doivent pas avoir la même valeur pour la clé ⚫Par exemple: dans la table Album, ⚫le champ NumAlbum est une clé primaire car deux albums ne doivent pas avoir le même numéro. ⚫Le champ Année n’est pas une clé primaire car deux albums peuvent avoir la même année de sortie.
  • 19. Conséquences de la déclaration d’une clé primaire ⚫Le système (Access) va refuser l’insertion d’un nouvel enregistrement si cela viole l’unicité de valeur pour la clé primaire ⚫S’il y a déjà un enregistrement avec la même valeur pour la clé primaire, le système va refuser la modification de la clé primaire si la nouvelle valeur existe déjà.
  • 20. Déclaration d’une clé primaire 1. Sélectionner le ou les champs formant la clé 2. Cliquer ici
  • 21. Notion de clé étrangère ⚫Un champ (ou ensemble de champs) est clé étrangère dans une table s’il fait référence à une clé primaire dans une autre table. ⚫Par exemple ⚫le champ NumArtiste est clé primaire dans la table Artiste, ⚫ce champ est donc clé étrangère dans la table Album. ⚫On parle dans ce cas d’intégrité référentielle.
  • 22. Conséquences de la déclaration d’une clé étrangère ⚫ Le système va refuser l’insertion d’un album si son NumArtiste n’existe pas dans la table Artiste. ⚫ Le système va refuser la suppression d’un artiste s’il existe dans la table Album des enregistrements qui lui sont associés. ⚫ Le système va refuser la modification d’un NumArtiste dans Album si la nouvelle valeur n’est pas présente dans Artiste. ⚫ Le système va refuser la modification d’un NumArtiste dans Artiste s’il y a déjà des albums qui sont associés à l’ancienne valeur.
  • 23. Création des clés étrangères (1) 1. Cliquer sur le bouton « Relations » 2. Afficher les deux tables Artiste et Album
  • 24. Création des clés étrangères (2) En déplaçant NumArtiste d’Artiste sur NumArtiste d’Album, on obtient cette fenêtre. Cocher cette case
  • 25. Création des clés étrangères (3) Cette relation signifie qu’un artiste peut être associé à plusieurs albums et un album est associé à un seul artiste.
  • 27. Requêtes sous Access QBE : INTERFACE GRAPHIQUE DE FORMULATION DES REQUETES TABLES UTILISEES Colonnes de la table résultat Conditions de restriction
  • 28. Afficher le titre et l’année de sortie de tous les albums Cliquer ici pour exécuter Cases à cocher pour afficher ces champs Requêtes sous Access : projection
  • 29. Afficher les albums sortis après 1975 On affiche tous les champs Critère ou condition de sélection Requêtes sous Access : sélection
  • 30. Requêtes sous Access : sélection Afficher les albums sortis après 1975 (solution 2) Case non cochée sinon Année sera affichée 2 fois Album.* désigne tous les champs de la table Album
  • 31. Requêtes sous Access : sélection + projection Afficher les titres des albums sortis après 1975 Le titre est affiché Année n’est pas affichée mais sert à exprimer le critère de sélection
  • 32. Requêtes sous Access : sélection complexe Afficher les albums de l’artiste 2 sortis après 1975 Deux conditions sur la même ligne sont composées par un ET
  • 33. Afficher les albums sortis entre 1975 et 1980 Requêtes sous Access : sélection complexe
  • 34. Afficher les albums sortis entre 1975 et 1980 Requêtes sous Access : sélection complexe
  • 35. Afficher les albums sortis en 1975 ou en 1980 Ligne permettant d’exprimer le OU Requêtes sous Access : sélection complexe
  • 36. Afficher les albums sortis en 1975 ou en 1980 Requêtes sous Access : sélection complexe
  • 37. Afficher les années de sortie des albums Une même année peut apparaitre plusieurs fois dans le résultat si plusieurs albums sont sortis durant cette année. Requêtes sous Access : projection
  • 38. Afficher les années de sortie des albums Afficher les Propriétés avec un clic droit ici Mettre à OUI la propriété « valeurs distinctes » Requêtes sous Access : projection
  • 39. Afficher les titres des albums triés par ordre croissant Permet de spécifier le type de tri que l’on veut Requêtes sous Access : projection
  • 40. Pour chaque album, donner son titre et le nom de son auteur Lien traduisant la jointure Requêtes sous Access : jointure
  • 41. Pour chaque album, donner son titre et le nom de son auteur Solution équivalente avec produit cartésien et sélection Requêtes sous Access : jointure
  • 42. Afficher le nombre d’albums Cliquer ici pour afficher la ligne « opération » On choisit de compter le nombre de numéros d’albums Renommage Requêtes sous Access : opérations
  • 43. Afficher le nombre d’albums Renommage Requêtes sous Access : jointure
  • 44. L’année du plus ancien album Requêtes sous Access : jointure
  • 45. Les opérations d’Access Les plus utilisées : Max : la valeur maximale Min : la valeur minimale Compte : compter le nombre de valeurs Moyenne : la valeur moyenne Somme : la somme des valeurs Regroupement : permet de regrouper des enregistrements Où : permet de poser des conditions sur des enregistrements
  • 46. Gestion des valeurs distinctes Le nombre d’années différentes Cette requête affiche le nombre d’années. Une même année sera comptée autant de fois qu’elle apparaît dans la table Album.
  • 47. Gestion des valeurs distinctes Le nombre d’années différentes (1) Créer d’abord une requête qui affiche les années distinctes puis l’enregistrer par exemple sous le nom AnnéesDistinctes.
  • 48. Gestion des valeurs distinctes Le nombre d’années différentes (2) Compter le nombre d’années qu’il y a dans « AnnéesDistinctes ». Noter que la table qu’on a affichée est en fait une requête.
  • 49. Opérations sous Access Les albums les plus anciens : Ce sont ceux dont l’année de sortie est égale à l’année minimale 1. Requête qui affiche l’année minimale (Requête « AnnéeMin ») 2. Utiliser cette requête pour comparer l’année de sortie de l’album 1 2
  • 50. Opérations sous Access Les albums qui ne sont pas les plus anciens : Ce sont ceux dont l’année de sortie est différente de l’année minimale 1. Requête qui affiche l’année minimale (Requête « AnnéeMin ») 2. Utiliser cette requête pour comparer l’année de sortie de l’album 1 2
  • 51. Le regroupement Pour chaque artiste, afficher son numéro ainsi que le nombre de ses albums On regroupe les lignes en fonction du NumArtiste : Deux lignes qui ont le même NumArtiste seront dans le même groupe. Pour chaque groupe, on compte le nombre de NumAlbum.
  • 52. NumAlbum Titre Année NumArtiste 23 Hier 1960 123 27 Suzanne 1976 25 36 Demain 1974 123 67 Montreal 1974 25 137 Thriller 1983 22 NumAlbum Titre Année NumArtiste 23 Hier 1960 123 36 Demain 1974 123 27 Suzanne 1976 25 67 Montreal 1974 25 137 Thriller 1983 22 Après regroupement sur NumArtiste
  • 53. Regroupements A B C 1 2 1 1 1 2 2 2 1 1 3 2 A B C 1 2 1 1 1 2 1 3 2 2 2 1 A B C 1 1 2 1 2 1 2 2 1 1 3 2 Par A. On obtient 2 groupes Par B. On obtient 3 groupes
  • 54. Le regroupement Pour chaque artiste, afficher son nom ainsi que le nombre de ses albums On regroupe les lignes en fonction du Nom. Pour chaque groupe, on compte le nombre de NumAlbum.
  • 55. Le regroupement Afficher le numéro des artistes qui ont plus d’un album On regroupe les lignes en fonction du NumArtiste. Pour chaque groupe, on compte le nombre de NumAlbum et on vérifie si ce nombre est supérieur à 1.
  • 56. Le regroupement Afficher le numéro des artistes qui ont au moins un album dont le numéro est supérieur à 1 On regroupe les lignes en fonction du NumArtiste Toutes les lignes où NumAlbum est ≤ 1 sont d’abord supprimées
  • 57. Le regroupement Quand on utilise le regroupement, il y a deux types de conditions (critères) : • Condition sur les groupes : Utiliser une des fonctions de calcul Min, Max, Moyenne, Somme, Compte, … • Condition sur les lignes : utiliser l’opération OÙ Les critères de sélection
  • 58. La différence sous Access ⚫Quels sont les numéros des artistes pour lesquels on n’a pas enregistré d’albums ? ⚫Projection(Artiste; NumArtiste) = R1 ⚫Projection (Album; NumArtiste) = R2 ⚫Différence(R1; R2) = résultat ⚫Sous Access, il n’est pas possible d’exprimer directement la différence. Il faut passer par la « jointure externe ».
  • 59. La jointure externe A R1.B R2.B C a1 b1 b1 c1 a2 b2 R1 A B a1 b1 a2 b2 R2 B C b1 c1 b3 c3 • jointureExterne(R1; R2) = R • R est obtenue en joignant les lignes de R1 avec les lignes de R2 • Les lignes de R1 qui ne sont pas joignables seront aussi présentes mais avec aucune valeur pour les champs de R2 (valeur NULL) R
  • 60. La jointure externe R1 A B a1 b1 a2 b2 R2 B C b1 c1 b3 c3 Quels sont les B de R1 qui ne sont pas dans R2 ? Ce sont ceux pour qui C=NULL dans R Sélection(R; C=NULL) = R’ Projection(R’; R1.B) = résultat Résultat = projection(R1,B) – projection(R2, B) R A R1.B R2.B C a1 b1 b1 c1 a2 b2
  • 61. La différence  Quels sont les noms des artistes qui n’ont pas enregistré d’albums ? Cliquer sur la jointure avec le bouton droit afin de changer ses propriétés
  • 62.  Quels sont les noms des artistes qui n’ont pas enregistré d’albums ? La différence
  • 63.  Quels sont les noms des artistes qui n’ont pas enregistré d’albums ? Nous avons une flèche dirigée de Artiste vers Album La différence
  • 64. L’intersection ⚫Quelles sont les personnes qui sont en même temps gérantes et occupantes d’un appart ? ⚫C’est l’intersection des champs NomGérant et NomOccupant. ⚫Toute intersection peut être exprimée par une jointure ⚫Intersection(R1;R2)=jointure(R1;R2) ⚫L’inverse n’est pas vrai. Certaines jointures ne peuvent pas être exprimées par une intersection.
  • 65. L’intersection Quelles sont les personnes qui sont en même temps gérantes et occupantes d’un appart ?
  • 66. L’union ⚫Il n’est pas possible d’exprimer l’union en utilisant le QBE d’Access. ⚫Il faut utiliser le langage SQL. ⚫Exemple : Le NSS de toutes les personnes: SELECT NSS FROM étudiant UNION SELECT NSS FROM employé
  • 67. Requête de mise à jour ⚫On veut ajouter 1m2 à la superficie de tous les appartements: ⚫On peut le faire à la main (difficile s’il y en a des centaines). ⚫On peut le faire par une requête de mise à jour.
  • 68. Requête de mise à jour Choisir le type « Requête de Mise à jour » On met à jour le champ Superficie. Sa nouvelle valeur est l’ancienne + 1
  • 69. Requête ajout ⚫ On veut créer une table « grandsApparts » qui contient ceux ayant une superficie > 100. ⚫ Copier/Coller la table Appart pour obtenir une nouvelle table ayant la même structure.
  翻译: