Informatique de Gestion
(Base de Donnes)
Pr CHARANI
[Link]@[Link]
1
Plan
Cours
Objectifs et dfinitions
Cration de la base de donnes: Tables et Relations
Formulaires
Requtes (QBE et SQL)
Ateliers: Travaux Pratiques(TP)
TP1: Creation dune base(tables + realtions + formulaires et Saisie)
TP2: Requtes dextraction et Selection(QBE et SQL)
TP3: Requtes paramtres, avec Jointures et Opration
TP4: Requtes Analyse Croise, Mise Jour(Modification) et
Suppression
Objectifs & dfinition
Structure de donnes permettant de stocker et de
fournir la demande, des donnes de multiple
utilisateurs.
Objectifs:
Partage de donnes: Multiple Utilisateurs
Accs facile: Applications, sites web, Portails, e
Pr CHARANI FSJESM
Cours de Bases de donnes
Exemples de structures de
donnes
Exemple 1 :Organisation (Bibliothque)
Donnes : Adhrents, Livres, Auteurs, Maison dditions,
Emprunteurs
Exemple 2 :Organisation(Universit)
Donnes : Etudiants, Enseignants, Cours, Notes, etc.
Exemple 3 :Organisation(Entreprise:Service de vente))
Donnes : Clients, Commandes, Produits, etc.
Dfinition dune base de
donnes
Une base de donne est un ensemble d informations structures sous
forme de Tables.
Une table est constitue des colonnes reprsentent les champs de la
table et les lignes reprsentent les enregistrements de la table.
Champs(Proprits, attributs)
Un Champ peut tre:
Naturelle (Nom, Prenom, .)
Artificiel (Num_Client, CIN, CNE,)
Pr CHARANI FSJESM
Cours de Bases de donnes
Champs(Proprits, attributs)
Un Champ peut tre de type:
Numrique
Numro Auto
Texte(texte court) ou Memo(texte long)
Date et heure
Montaire
etc
Pr CHARANI FSJESM
Cours de Bases de donnes
Cl(primaire ou trangre)
Parmi les Champs: Dsigner la cl primaire
Une cl est une combinaison minimale de proprits qui
permet d identifier d une manire unique un
enregistrement
Une cl peut tre simple ou compose
Il y a deux types de cls :
Cl primaire (table principale)
Cl trangre (table secondaire)
Exemple: la cl primaire de la table clients(cin)
Dfinition d un SGBD
Systmes de Gestion de Bases de Donnes (DataBase
Management Systems - DBMS)
Un SGBD permet de :
Insrer, Modifier, et rechercher des donnes
spcifiques dans une grande masse d'informations et
partage par de multiples utilisateurs
Dfinition d un SGBDR
Un SGBD qui permet les relations entre les tables
de la base est dit un Systme Gestionnaire de
bases de donnes relationnelles SGBDR.
Exemple de SGBDR:
ACCESS
ORACLE
SQLSERVER
etc.
Pr CHARANI FSJESM
Cours de Bases de donnes
10
SGBDR: ACCESS(Objets)
Tables: pour stocker des
donnes ;
Formulaires: pour saisir des
donnes et les visualiser
l'cran ;
Requtes: pour consulter et
mettre jour des donnes ;
Etats: pour imprimer des
donnes ;
Pr CHARANI FSJESM
Cours de Bases de donnes
11
Voir
Travaux Pratiques sous Access
TP1
Cration d'une base de donnes :
Cration des Tables,
Etablissement des relations entre les tables
Saisie des donnes travers des formulaires
Pr CHARANI FSJESM
Cours de Bases de donnes
12
Cration dune table
Mode cration
En mode cration, une fentre s'ouvre qui permet de dfinir la
table champ par champ, en prcisant le nom du champ et le
type de donnes qu'il contient.
Pr CHARANI FSJESM
Cours de Bases de donnes
13
Cration de champs dune
table
type de donnes
Chaque champ a un type de donnes
Pr CHARANI FSJESM
Cours de Bases de donnes
14
Type
Proprits
Texte
Le champ peut contenir n'importe quel caractre alphanumrique (chiffre,
lettre, signe de ponctuation).
Mmo
Le champ peut contenir n'importe quel caractre alphanumrique.
Numrique
Date/heure
Montaire
NumroAuto
Oui/non
Donnes numriques (non montaires)
Donnes de date et/ou d'heure
Donnes montaires, prsentes avec deux chiffres aprs la virgule
Taille
< 256
caractres
< 65.536
caractres
1 16 octets
8 octets
8 octets
Numrotation automatique, squentielle (commenant 1)
4 octets (entier
long)
Variable boolenne (deux valeurs possibles uniquement)
1 bit
Objet OLE
< 1 Go
Pour lier un objet extrieur: tout fichier (document Word, feuille de calcul
Excel, etc.)
Lien hypertexte
Des URL de sites web et des adresses de courrier lectronique
Pr CHARANI FSJESM
Cours de Bases de donnes
< 2049
caractres
15
Proprits
Pr CHARANI FSJESM
Cours de Bases de donnes
16
Proprits
Taille du champ : dfinit le nombre de caractres ;
Format : dfinit la manire dont les informations
s'affichent.
Masque de saisie : guide la saisie des donnes et
exerce un contrle.
Lgende : dfinit le nom de l'tiquette dans le
formulaire associ la table;
Valeur par dfaut : valeur
qui
s'affiche dans le
Pr CHARANI
FSJESM
Bases de donnes
champ avant saisieCours
pardel'utilisateur
;
17
Proprits
Valide si : condition de validit du champ. Exemple : une
notation sur 20 doit tre comprise entre 0 et 20 ;
Message si erreur : ce message s'affiche si la condition de
validit prcdente n'est pas satisfaite ;
Null interdit : le champ correspondant ne peut rester vide
lors de la saisie d'un enregistrement ;
Chane vide autorise : le champ peut contenir une chane ne
comportant aucun caractre ;
Index : un fichier index est associ au champ de telle sorte
que les recherches d'information s'effectuent plus
rapidement.
Compression unicode : un octet suffit pour saisir un
caractre (pour les alphabets utiliss dans l'Europe de
l'ouest et dans le monde anglophone).
Pr CHARANI FSJESM
Cours de Bases de donnes
18
Masque de saisie
Caractre
Description
Chiffre (0 9, entre obligatoire, signes plus
(+) et moins (-) non accepts).
Chiffre ou espace (entre facultative).
Chiffre ou espace (entre facultative).
Lettre (A Z, entre obligatoire).
Lettre (A Z, entre facultative).
Lettre ou chiffre (entre obligatoire).
Lettre ou chiffre (entre facultative).
&
Caractre quelconque ou espace (entre
obligatoire).
Pr CHARANI FSJESM
Cours de Bases de donnes
19
Caractre
Description
Caractre quelconque ou espace (entre
facultative).
.,:;-/
Sparateurs de dcimales, de milliers, de date
et d'heure
<
Convertit tous les caractres en minuscules.
>
Convertit tous les caractres en majuscules.
Affiche le caractre qui suit sous sa forme
ASCII littrale (par exemple, \A s'affiche
sous la forme A).
Pr CHARANI FSJESM
Cours de Bases de donnes
20
Valide si et message erreur
Proprit ValideSi
MessageSiErreur
<> 0
L'entre doit avoir une valeur
diffrente de zro.
> 1000 Ou Est Null
L'entre doit tre vide ou
suprieure 1000.
Comme "A????"
L'entre doit comporter 5
caractres et commencer par
la lettre A .
>= #1/1/96# Et
<#1/1/97#
L'entre doit dater de 1996.
Pr CHARANI FSJESM
Cours de Bases de donnes
21
Relations dans une base de
donnes Access
Aprs avoir dfini plusieurs tables dans votre base
de donnes(Clients, commandes, produits et
lignes)
La premire tape consiste dfinir des relations
entre les diffrentes tables.
Aprs vous pouvez :
saisir des donnes en utilisant des formulaires,
tablir des requtes
diter des tats
Pr CHARANI FSJESM
Cours de Bases de donnes
22
Relations dans une base de
donnes Access
Une relation est une association entre deux
tables
Une relation a pour principe la
correspondance des donnes des champs
cls de deux tables :
Ces champs sont la cl primaire et la cl
trangre.
Pr CHARANI FSJESM
Cours de Bases de donnes
23
Relation un--plusieurs
La relation un--plusieurs est la plus courante.
Dans ce type de relation:
un enregistrement de la table A peut tre mis en
correspondance avec plusieurs enregistrements de la
table B,
Et chaque enregistrement de la table B ne
correspond qu'un enregistrement de la table A.
Pr CHARANI FSJESM
Cours de Bases de donnes
24
Relation plusieurs--plusieurs
Dans une relation plusieurs--plusieurs,
un enregistrement de la table A peut tre mis en correspondance
avec plusieurs enregistrements de la table B,
et inversement, un enregistrement de la table B peut tre mis en
correspondance avec plusieurs enregistrements de la table A.
Ce type de relation n'est possible qu'aprs dfinition d'une troisime
table (appele table de jonction)
Une relation plusieurs--plusieurs n'est en fait rien d'autre que deux
relations un--plusieurs avec une troisime table.
Pr CHARANI FSJESM
Cours de Bases de donnes
25
Relation un--un
Dans une relation un--un:
Chaque enregistrement de la table A ne peut correspondre qu'
un enregistrement de la table B,
Et inversement, chaque enregistrement de la table B ne peut
correspondre qu' un enregistrement de la table A.
Vous pouvez utiliser une relation un--un :
Pour diviser une table qui a de nombreux champs,
Pour isoler une partie d'une table pour des raisons de scurit,
Pr CHARANI FSJESM
Cours de Bases de donnes
26
Exemple de relations
Pr CHARANI FSJESM
Cours de Bases de donnes
27
Formulaire
UN formulaire est un ensemble de champs, un champ peut
tre :
Champ de type texte,
Des boutons un seul choix
Des cases cocher
Des listes
Des textes multi lignes et multi colonnes
Des champs de type fichiers
Des boutons
Un formulaire permet la saisie et la visualisation des donnes
Pr CHARANI FSJESM
Cours de Bases de donnes
28
L'intgrit rfrentielle
L'intgrit rfrentielle est un systme de rgles qui est
utilis pour garantir les relations entre les tables en cas de
mise jour (ajout, modification et suppression).
Vous pouvez mettre en uvre l'intgrit rfrentielle si
toutes les conditions suivantes sont runies :
Le champ correspondant de la table principale est une
cl primaire.
Les champs lis ont le mme type de donnes.
Les deux tables doivent appartenir la mme base de
donnes.
Pr CHARANI FSJESM
Cours de Bases de donnes
29
L'intgrit rfrentielle
Les rgles suivantes dintgrit rfrentielle s'appliquent quand vous
cochez la premire option et ne cochez pas les deux autres options :
Au moment de la saisie les donnes doivent tre valides :
Dans le champ cl trangre vous ne pouvez pas saisir une valeur qui
n'existe pas dans la cl primaire de la table principale.
Vous ne pouvez pas modifier une valeur cl primaire dans la table
principale si cet enregistrement a des enregistrements lis:
Par exemple, vous ne pouvez pas modifier le CIN d'un Client dans la table
Client si des commandes lui sont affectes dans la table Commandes.
Vous ne pouvez pas effacer un enregistrement de la table principale si
des enregistrements correspondants existent dans une table lie:
Par exemple, vous ne pouvez pas effacer l'enregistrement d'un client dans
la table Clients s'il y a des commandes affectes celui-ci dans la table
Commandes.
Pr CHARANI FSJESM
Cours de Bases de donnes
30
Mises jour et suppressions en
cascade
Vous pouvez modifier une valeur cl primaire
dans la table principale si cet enregistrement a
des
enregistrements
lis.
Alors
ces
enregistrements subissent les modifications
apportes.
Vous pouvez effacer un enregistrement de la
table principale si des enregistrements
correspondants existent dans une table lie.
Alors ces enregistrements seront supprims
Pr CHARANI FSJESM
Cours de Bases de donnes
31
Les requtes
Une requte est un ensemble dinstructions
permettant de filtrer les donnes dune base,
Ajouter les donnes, Mettre jour les
donnes de la base, Supprimer les donns,
Effectuer une analyse croise ou de Crer
une base et ses tables.
Types de requtes:
Requte de slection
Requte analyse croise
Requte de Mise jour
Requte de suppression
Pr CHARANI FSJESM
Cours de Bases de donnes
32
Les requtes
(mode)
Sous Access il y a deux modes de requtes:
Mode QBE : Query by exemple
Mode SQL : Structured Query language
Pr CHARANI FSJESM
Cours de Bases de donnes
33
Requte de slection en mode
Cration
Pr CHARANI FSJESM
Cours de Bases de donnes
34
Requte de slection en mode
Cration
Champs :
Tables :
Tri :
Slectionner les champs afficher
Slectionner les tables exploiter
type de Tri des donnes (croissant, dcroissant,
non tri)
Afficher :
Activer ou dsactiver laffichage des champs
Critres :
Spcifier les critres de recherche
OU : Si vous avez deux conditions regroupes par ou, la
deuxime condition est spcifie dans la ligne OU.
Si les condition sont regroupes par loprateur ET alors elles sont
spcifies dans la mme ligne CRITERES.
Pr CHARANI FSJESM
Cours de Bases de donnes
35
Dfinition dune condition (critre de recherche) :
Une condition est de la forme :
Champ oprateur_de_comparaison critre
Oprateurs de comparaison :
<, <=
>, >=
= galit
<> Diffrent
Oprateurs particuliers
In (liste de valeurs spares par des points
virgules)
Comme ou pas comme pour les champs de type texte
Oprateurs logiques :
Et et ou
condition1 ET condition2
condition1 OU condition2
Pr CHARANI FSJESM
Cours de Bases de donnes
36
Exemple de Requte de slection en mode Cration
Afficher tous les clients
Pr CHARANI FSJESM
Cours de Bases de donnes
37
Mode SQL :
Requtes dextraction :
Lextraction des donnes se fait par le mot cl SELECT qui signifie
Slectionner
Structure gnrale dune requte dextraction :
SELECT liste_de_colonnes_ou_champs +liste_fonctions + alias
FROM liste_de_tables
WHERE Conditions_de_recherche
ORDER BY liste_champs [ASC/DESC]
GROUP BY liste_champs
HAVING conditions_sur_fonctions ;
Pr CHARANI FSJESM
Cours de Bases de donnes
38