Vous êtes sur la page 1sur 40

Bases de Donnes

Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Sance 2 : Mise en oeuvre

Synthse : conception de BD
langage de modlisation famille de SGBD SGBD
Oracle Sybase. PostgreSQL Access ... Modle physique de donnes
dcrit les tables, l organisation des fichiers, les index, les contraintes d intgrit

Entits Association

Analyse du contexte

UML

Hirarchiques Rseaux

Relationnels
Orients-objets XML

Modle conceptuel de donnes


indpendant de toute considration technique

Modle logique de donnes


indpendant d un SGBD particulier

temps

Synthse Sance 1
Un modle Entit-association contient les lments suivants: Entits
Proprits (ou attributs) Identifiants

Relations
ventuellement munies de proprits (ou attributs)

Cardinalits (rappels immdiat)

Ces lments sont TOUS OBLIGATOIRES

Les cardinalits entre deux entits


Les cardinalits dune entit vers une autre, vont avoir pour but dindiquer combien de fois lvnement va se produire au minimum = Cardinalits mini (0 ou 1 fois) et combien de fois lvnement va se produire au maximum 1 ou plusieurs fois (n). Cardinalits Minimales : Premier sens de lecture de SALARIE vers SERVICE. Rpondre la question suivante : Au Minimum : Un salari travaille dans 0 ou 1 service, en dautres termes, un salari peut-il ne pas travailler (ne pas tre affect) dans un service ? Si la rponse est Oui, elle sera matrialise par le nombre 0. Si la rponse est Non cela signifiera quil est obligatoirement affect un service.

Cardinalit Mini SALARIES SAL_NUM_SS SAL_NOM 0, Travaille Tra_Date

SERVICES SER_NUM SER_NOM SER_DESCRIPTION

Cardinalits Maximales
Au Maximum : Un salari travaille au maximum dans un service ou peut-il travailler, (tre affect) dans plusieurs services. Si la rponse est : Il travaille ( il est affect) dans au maximum un service, la cardinalit maxi sera 1 Sinon, sil peut travailler dans plusieurs services, la rponse sera plusieurs et sera matrialise par n . Dans le cas ci-dessous, la lecture de SALARIE vers SERVICE devient : Un salari travaille au minimum 0 fois dans un service (ou il peut ne pas travailler, tre affect, dans un service mais par contre il travaille au maximum dans 1 service, il ne peut pas tre affect plusieurs).

SALARIES SAL_NUM_SS SAL_NOM

0,1

Cardinalit Maxi Travaille Tra_Date

SERVICES SER_NUM SER_NOM SER_DESCRIPTION

Cardinalits de SERVICES vers SALARIES


SALARIES SAL_NUM_SS SAL_NOM 0,1 1,n SERVICES SER_NUM SER_NOM SER_DESCRIPTION Sens de lecture
Cardinalits Mini : - Un service fait travailler au moins un salari (Card Min = 1). (Card Max = n). Ce (M.C.D.) est maintenant complet et porteur de sens. La lecture est double, de SALARIES vers SERVICES, un salari peut ne pas travailler dans un service (Card. Mini=0). Mais sil est affect, il est affect au plus dans un (Card. Max=1). A contrario de SERVICES vers SALARIES, un service fait travailler au moins un salari (Card. Mini=1), mais il peut au maximum en faire travailler plusieurs (Card. Maxi=n)

Travaille Tra_Date

Cardinalits Maxi : - Un service fait travailler au maximum plusieurs salaris,

Le schma externe : les vues


Vue1 Vue2 Vue3 Vues externes chaque vue reprsente la partie de la bd relative chaque utilisateur / application Schma conceptuel vue globale de la base : les donnes stockes et les relations

R1(A number(10), B string, , primary key (A), ...) . Rn (X number(15), Y string, , primary key (X), )

Schma logique Reprsente un modle de donnes conforme au modle cibl de SGBD (par ex. SGBDR) Schma physique dcrit comment les donnes sont stockes dans la bd + les index

Sance 2
Un ensemble de dfinitions par rapport aux objets des SGBD
Tables, typage des champs Points de vues et Vues Requtes Un langage universel : le SQL

Les BD spatiales
Spcificits Illustration de linteraction SGBDR/SIG-Outil

Introduction
Les SGBDR font rfrence au modle relationnel. Ils fonctionnent avec des tables. Ils offrent galement une srie d'outils pour faciliter l'utilisation et la constitution de ces tables :
Un gnrateur de requtes Un gnrateur de formulaire Un gnrateur d'tats Une interface de programmation
par macros ; par modules de programmation.

Attention : le vocabulaire change entre la thorie et les logiciels SGBDR, et entre les diffrents SGBDR

Microsoft Office : Access

Open Office : Base

Les tables
Les tables contiennent les donnes Avec les relations (liens), les tables constituent la base de donnes proprement dite Globalement, une table se prsente comme un fichier issu dun tableur Calc ou MS Excel, mais : - pas de formules ; - les titres de colonnes (nom des champs) ne font pas partie de la table ; - chaque colonne correspond un seul type de donnes.

Les tables : typage


Quel doit tre le contenu des champs (cf dictionnaire de donnes) Taille, type de donnes, nature et des proprits Quelle est la cl de la table (un type spcial compteur- peut tre utilis s'il n'existe pas de cl a priori.)
Types de donnes dans une table :
Texte : Jusqu' 250 caractres Mmo : Jusqu' 64000 caractres Numrique : Valeur entire ou relle Date / heure : No comment Montaire : Valeur montaire Compteur : Valeur entire automatique Oui/Non : Valeur boolenne Liaison OLE Objets divers : graphiques, images, etc.)

Les tables : proprit des champs


Taille du champ : Nombre de caractres maximum qui peuvent tre saisis Valeur par dfaut : Texte qui sera contenu par dfaut dans ce champ Valide si : Expression pour valider la saisie, exemple : <> machin , interdira la saisie du mot machin dans ce champ Message si erreur : i va tre affich si lexpression saisie nest pas valide Null Interdit : Si oui, il faudra obligatoirement saisir une valeur dans ce champ Chane vide autorise : La chane vide est " ", on peut l'utiliser lorsqu'on n'a rien entrer dans un champ obligatoire,si cette proprit est non, il faudra obligatoirement saisir du texte dans ce champ Index : Le champ est un index avec ou sans doublons, si l'index n'a pas de doublons, il ne sera pas possible de saisir deux fois le mme contenu pour ce champ dans la table Format : Va dfinir comment le contenu du champ va tre affich Masque de saisie : Oblige saisir le contenu du champ selon un format prcis (par exemple un numro de tlphone).

Les relations
lier logiquement certaines informations= dfinir les cls trangres l'aide d'un outil graphique

1a. Crer et afficher les tables l'aide de l'outil relation ; 1b. Identifier les cls primaires (indiques par une cl) et trangres de chaque table)

2a. Lier les champs (cls primaires et trangres) des deux tables ; 2b. dfinir le type de relation 1-1 ou 1-n.

Suppression, ajout Illustration de lintgrit rfrentielle : cohrence de la BD

3. Rpter l'opration avec d'autres tables s'il y lieu de le faire.

Requtes
Qu'est-ce qu'une requte ? Une question que l'on se pose sur les donnes : > Les requtes permettent de crer une nouvelle table partir des donnes existantes. > TOUTE REQUETE CREE UNE TABLE > Cette table rsultats pourra tre utilise dans un formulaire ou un tat. 1. Avec un gnrateur graphique Ce qui apparat comme la solution la plus simple notre niveau 2. En langage SQL Ce qui permet de communiquer avec d'autres SGBD, mais ncessite videmment de matriser le langage SQL. Dans les deux cas, le rsultats est le mme : on applique des oprateurs relationnels

Les requtes
Les oprateurs relationnels (algbre ensembliste) Unaire : s'applique une seule table Binaire : deux tables sont ncessaires en entre
De base
Union Diffrence Restriction (slection) Projection

Drivs
Intersection Jointure

Requte = cration dune nouvelle table

SQL : Select, From, Where


Oprateurs logiques

DEG
12 14 12 10 11 12 13

SQL : Ordre et double

DEG
12 14 12 10 11 12 13

Jointure sur une BD scolaire


table d'lves table des disciplines
Id_matire

table de notes
Id_matire

matire matire matire matire matire

Je souhaite que tu me prsente les identifiants des notes de la tables note, Les nom de la tables lves, les nom de la table matire, et les notes de la tables note A partir des tables lves, matire et note O lidentifiant lve de la table lve correspond lidentifiant lve de la table note et o lidentifiant matire de la table matire correspond lidentifiant matire de la table notes
matire

Formulaire
Qu'est-ce qu'un formulaire ? Un formulaire sert saisir, visualiser et modifier les donnes d'une base de donnes, enregistrement par enregistrement, tuple par tuple.

> N'affiche que les informations qui vous intressent > Utilise des contrles (zones de texte, case cocher, etc) > Possibilit de crer des formulaires parlants, personnaliss, en couleur, etc.

Etats (MSaccess) ou rapports (OooBase)


Un tat ou rapport sert visualiser, mettre en page et analyser des donnes

SGBD et gographie
L'information gographique
une information relative un objet ou un phnomne du monde terrestre est dcrite plus ou moins compltement par
la nature et les attributs de l'objet (smantique) la localisation et la forme de l'objet (gomtrie) Les relation de voisinage entre objets (topologie)

ne pas confondre la donnes et sa reprsentation

Les BD spatiales
Ensemble organis dobjets gographiques :

Chaque objet est un couple form dune description qualitative ou quantitative et dune localisation spatiale
on parle respectivement de donnes spatiales et de donnes attributaires ou descriptives

Organis souvent en couches thmatiques :


Les donnes sont organises en couches regroupant les objets gographiques appartenant un mme thme.
Ex : Hydrologie, Pdologie, Rue, Bti ....

Les BD spatiales
Manipuls au sein dun SIG Systme d'Information capable, dAcqurir, d'Assembler, dArchiver, dAnalyser et dAfficher de l'information gographique (les 5 A) Dfinition d un SGBD spatial (1) cest un SGBD (2) il offre un type de donne spatial dans son modle de donnes et son langage de requtes (3) il implmente ce type et ses oprateurs, fournissant au moins lindexation spatiale et des algorithmes efficace pour la jointure spatiale.

Les BD spatiales
Relations spatiales proprits essentielles car tout ce qui se passe un endroit est li ce qui ce passe au voisinage et ce lien dcrot avec l'loignement. ( 1 re loi en Gographie TOBLER 79) Relations de 2 types Inter-couches : relations verticales Intra-couche : relations horizontales Mta-donnes gographiques Echelle, Emprise, Rfrentiel gographique (Systme de projection), Qualit (incertitude de localisation et des attributs), Datation,

SGBD et gographie
RELATIONNEL Donnes Entier, Rel, Texte SPATIAL Plus complexe : Point, Ligne, Rgion

Prdicats et calculs

Tests : =, >

Prdicats et calculs gom. et topologiques : Tests : intersecte, adjacent , Fonctions gom. : intersection, surface Manipulation par thme ou inter-thmes Section et jointure sur critre spatial Agrgats : fusion dobjets adjacents Liens spatiaux (souvent) implicites

Manipulation

Oprateurs de lalgbre : Slections, Projection, Jointure Agrgats : Count, Sum, Avg Par cls de jointures

Liens entre objets

- Spcificits des SGBD Gographiques - Extensions spatiales des SGBD relationnels

Les particularits de la modlisation de BD Go

Smantique Gomtrie Topologie

Schma conceptuel correspondant

Limites du modle E-A


Pauvret du modle entit association pour la reprsentation de caractristiques spatiales un modle smantiquement trs pauvre (espace, temps) Intrt de la modlisation conceptuelle facile comprendre, rutilisable pas tout a fait indpendante des options techniques les BD multi-reprsentations stocker dans une mme base plusieurs reprsentation d'un mme objet ex des routes

Point de vue et reprsentations

Dautres modles de donnes


Besoin dintgrer des changements lis aux chelles smantiques et gomtriques Solutions : plusieurs base relies, une seule avec toutes les donnes, une seule base avec des processus de gnralisation Ncessit outils de modlisation conceptuelle spcifiques :
Perceptory BEDARD
AGL, extension UML, traducteur http://yvanbedard.scg.ulaval.ca/ rubrique publications et telechargement

MADS formalisme, diteur, traducteur ...

Ex : MADS
Formalisme MADS (PARENT C. EPFL) MADS: Modeling of Application Data with Spatio-temporal features

SGBDR, SIG ?
Les SGBD-R prsentent des lacunes au niveau logique pour donnes spatio-temporelles Des SGBD qui permettent de travailler dans une unique BD contenant des donnes attributaires classiques et des donnes gographiques spatio-temporelle
SGBD spatiaux : Oracle et PostGREsql/PostGIS SIG intgrant un moteur de BD ArcGIS et les godatabases

SGBD, SIG ?
Utilisation dun SGBD pour les donnes go
En thorie oui, mais des difficults

Utilisation dun SIG pour toutes les donnes


Pas les fonctions de gestion et dadministration

Combiner la richesse de la structuration des donnes gographiques, un cas classique :


Une BD classiques gres par un SGBD pour les donnes descriptives Une BD contenant les entits gographiques (gomtrie, topologie) gre par un SIG-outil Lien entre les deux BD (Ex : ODBC)

Illustration ODBC : Rserv. Natur. Nation. Ar Tnr.

FIN de la sance 2
Merci de votre attention, Prochaine sance V 28 NOv. 10-12h Td : APPLICATION

Rfrences
BOLOT J., 1998, Constitution d'une base de donnes spatialises : le commerce de dtail Besanon, DATE Chris J.. Vuibert, 2004, Introduction aux bases de donnes, 1040 p. EBOOK, 2008, Site hbergeant des livres numriss relatifs aux SGBD, notamment MSAccess, en accs gratuit, http://www.livrespourtous.com/e-books/list/onecat/Ebooks-gratuits+Informatique+Bases-de-donnees/0.html (consult le 24/10/2008). Rubrique Base de donnes http://autoformations.co.cc/ (consult le 24/10/2008). PRELAZ-DROUX R., 1995, Systme dInformation et Gestion du Territoire : Approche systmique et procdures de ralisation, Coll. Mta, Presses polytechniques et Universitaires Romandes, Lausanne, 156p. SERVIGNE S., LIBOUREL T., 2006, Fondements des bases de donnes spatiales, Herms Lavoisier, 237 p. Ce cours a t ralis partir des matriaux suivants : ANTONI J.-P., 2006, Bases de donnes, Prsentation de cours, Universit de Franche-Comt GographieAmnagement, 33p. RETORE, Support de cours BD en ligne, http://www.labri.fr/perso/retore/BD/ (consult le 24/10/2008). http://www.ht.auf.org/coursenligne/base_donnees/introduction.htm D.GONZALEZ, Initiation aux bases de donnes, Notes de cours des enseignants d'informatique. RETORE C., 2006, Site personnel de ressource denseignement, Universit Bordeaux 1 Dpartement d'Informatique, en ligne. SALZANO G. 2007 Cours de base de donnes, Universit de Marne-la-Valle, 92p. SEDE-MARCEAU M.-H., 2002 Notes de cours Introduction aux bases de donnes, Universit de Franche-Comt Gographie-Amnagement, 31p. ZEITOUNI note de Cours SIG, ENSAI Rennes, 40p.