Initiation aux bases de données et à la programmation événementielle

Slides:



Advertisements
Présentations similaires
REFERENTIEL DE LA SERIE STG
Advertisements

Benoît Piranda Équipe SISAR Université de Marne La Vallée Bases de données Algèbre relationnelle, opérations Requêtes SQL.
Les requêtes Manière de dialoguer avec une base de donnée pour :
Les requêtes Les requêtes permettent dinterroger une base de données suivant 3 opérateurs : La projection Affiche le contenu dun champ complet En langage.
Algèbre Relationnelle
Cours de Base de Données & Langage SQL
Cours N°2 Base de Données & Langage SQL
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Chapitre 5 : Le langage SQL
Sélection de colonnes (la projection)
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Séance /10/2004 SGBD - Approches & Principes.
INTRODUCTION AUX BASES DE DONNEES Algèbre relationnelle
Op é rateurs ensemblistes Module 4. 2 La clause GROUP BY La clause GROUP BY est nécessaire dès que l'on utilise des fonctions de calculs statistiques.
Modélisation et utilisation Aurélien Marion1 Aurélien Marion
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
1 Les bases de données Séance 6 L ’extraction de données Le SELECT.
Les systèmes d'information 1- Une pratique quotidienne 2- Les données 3- Approche conceptuelle 4- Notion de serveur 5- Conception d'un système d'information.
1- Introduction 1ère partie Le langage SQL 2- Connexion 3- Structure & Contenu 4- Requêtes.
SQL partie 5 1 LMD create – update – primary key secondary key.
1- Introduction Sommaire Modèle Logique des Données 2- Structure 3- Traduction du MCD en MLD 4- Recap - Méthodologie.
SQL : 4 fonctions d'exploitation de SGBD SQL (Structured Query Language, traduisez Langage de requêtes structuré) est un langage informatique ayant pour.
SQL query - 1 / D. Berrabah SQL : interrogation de BD Requêtes d'interrogation simples Requêtes complexes Agrégats et groupement.
ANNEE ACADEMIQUE Institut Supérieur Emmanuelle D’Alzon de Butembo COURS: THEORIE DE BASE DE DONNEES : 45H PROMOTION: G2 Gestion Informatique.
Les Bases de données Définition Architecture d’un SGBD
Cours Initiation aux Bases De Données
Initiation à la conception des systèmes d'informations
Systèmes d’Information
Construire des requêtes
ملخص Initiation à la sgbdr
Intégration du P7 dans l’épreuve E41
Algorithmiques Abdelbasset KABOU
Université Stendhal - Grenoble
Initiation aux bases de données et à la programmation événementielle
Langage de manipulation de données (LMD)
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Les Bases de données Définition Architecture d’un SGBD
Structured Query Language
7.1 Transformation linéaire
Initiation aux bases de données et à la programmation événementielle
Les bases de données et le modèle relationnel
Langage de Manipulation des Données LMD
Outils méthodologiques
SQL LID – INTERROGATIN DES DONNEES
Initiation aux bases de données sous Access. Plan I.Structure d’une base de données II.Langages de manipulation de données –Algèbre relationnelle (théorique)
Maria Berger - Maîtrise d'AES Algèbre relationnelle.
Introduction BD TABLES ET DONNÉES champs OU données, types de données
Cours N°9: Algorithmiques Les Tableaux 1
Manipulation D’Une Base De Données
Structure D’une Base De Données Relationnelle
Calcul Relationnel Chapitre 4, Section 4.3.
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Langage d’interrogation des Données LID
1 Copyright © 2004, Oracle. Tous droits réservés. Extraire des données à l'aide de l'instruction SQL SELECT.
Bases de données sous Access. Initiation aux bases de données  Structure d’une base de données.
5 Copyright © 2004, Oracle. Tous droits réservés. Afficher des données de plusieurs tables.
C Copyright © 2004, Oracle. Tous droits réservés. Syntaxe des jointures Oracle.
Langage d’interrogation des Données Les fonctions de groupes
Algèbre relationnelle
Semaine 3 Retour sur la semaine 2 Plan de séance
Les Requêtes S.Q.L « Structured Query Language). SQL Historique.
PRESENTATION ACCESS Editeur : Microsoft Environnement Windows (SE)
Principes de programmation (suite)
Bases de Données Relationnelles(1)
1 O ffice De La F ormation P rofessionnelle Et De La P romotion De T ravail I nstitut S pécialiste en T echnologie A ppliquée -ASSA Prof. : Omar BOUNHAS.
Algèbre Relationnelle
LINQ. LINQ (Language-Integrated Query) est une nouveauté du.NET Framework 3.5 C’est le nom d’un ensemble de technologies basé sur l’intégration de fonctions.
Transcription de la présentation:

Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 2 Support de cours rédigé par Bernard COFFIN Université Paris 10 – Nanterre 2007/2008

ACCESS est une BD relationnelle Mémoire du SI La mémoire du système d’information constitue la base de données proprement dite Ensemble cohérent d’informations complexes Les informations élémentaires (données) sont regroupées en fonction du sens qu’on leur donne Plusieurs techniques pour réaliser des BD ACCESS est une BD relationnelle

Relationnelle ? C’est une référence à l’algèbre relationnelle Les BD relationnelles sont très répandues Elles utilisent un langage d’interrogation et de mise à jour : SQL Structured Query Language Langage de requête structuré Langage déclaratif : on décrit ce qu’on veut obtenir, la machine fait le nécessaire

Pour comprendre et bien utiliser les requêtes il faut avoir un minimum de notions sur l’algèbre relationnelle

Algèbre relationnelle Partie de la théorie des ensembles Une définition qui nous suffit : Un ensemble est une collection d’éléments Un ensemble peut être : Tous nos ensembles seront finis - vide - infini Exemple : N, ensemble des nombres entiers - fini Exemple : A = {1, 3, 8, 12, 20} On appelle cardinal d’un ensemble fini le nombre de ses éléments |A| = 5

Opérations de base sur les ensembles tel que Union de deux ensembles Intersection de deux ensembles appartient Produit cartésien de deux ensembles Les éléments de A.B sont des couples Les éléments d’un produit cartésien de n ensembles sont des n-uplets

Exemple : A = {vert, jaune, rouge} B = {allumé, éteint} A • B est l’ensemble de tous les couples respectant la définition Pour obtenir le résultat, il faut successivement associer (dans un couple) chaque élément de A à chaque élément de B A • B = {(vert, allumé), (vert, éteint), (jaune, allumé), (jaune, éteint), (rouge, allumé), (rouge, éteint)} | A • B | = | A | x | B |

Relation Un domaine est un ensemble dont les éléments sont des « valeurs » A = {vert, jaune, rouge} B = {allumé, éteint} Les ensembles de l’exemple précédent sont des domaines En algèbre relationnelle, une relation est un sous-ensemble (fini) du produit cartésien de plusieurs domaines Par extension, un domaine est une relation A, B et A•B sont des relations Le produit cartésien de plusieurs relations est une relation

Représentation des relations par des tableaux Ces relations sont enregistrées dans la mémoire permanente de la BD Nous utiliserons souvent des « tables », mais… toutes les relations ne sont pas des « tables » En-tête de colonne : le nom du champ Table C Table B B allumé éteint A B vert allumé éteint rouge Il est préférable de parler d’ « enregistrement » Dans chaque « ligne », un n-uplet de la relation Les valeurs d’une « colonne » appartiennent à un même domaine Il est préférable de parler de « champ »

Liste des champs d’un produit de deux relations C’est l’union des listes des champs des deux relations R1 R2 R1•R2 ville dept Rouen 76 Lyon 69 dept Région 28 Centre 69 Rhône-Alpes ville R1.dept R2.dept région Rouen 76 28 Centre Lyon 69 Rhône-Alpes On les différencie dans R1•R2 à l’aide de noms qualifiés Deux champs portent le même nom dans R1 et R2

En SQL, c’est une sélection Projection C’est une opération sur les relations En SQL, c’est une sélection Elle permet à partir d’une relation existante d’en obtenir une nouvelle en ne conservant qu’une partie de ses champs projection de « étudiant » sur (nom, prénom) étudiant nom prénom formation adresse MARTIN Marie MMIA Versailles BERNARD Louis Gestion Nanterre THOMAS Alice Anglais Bernard Suresnes nom prénom MARTIN Marie BERNARD Louis THOMAS Alice Bernard SELECT nom, prénom FROM étudiant;

Restriction aux nanterrois C’est une autre opération sur les relations Elle permet à partir d’une relation existante d’en obtenir une nouvelle en ne conservant qu’une partie de ses enregistrements SELECT étudiant.* FROM étudiant WHERE adresse = "Nanterre"; étudiant Restriction aux nanterrois nom prénom formation adresse MARTIN Marie MMIA Versailles BERNARD Louis Gestion Nanterre THOMAS Alice Anglais Bernard Suresnes nom prénom formation adresse BERNARD Louis Gestion Nanterre THOMAS Alice Anglais On obtient ce résultat en posant une condition sur la valeur du champ « adresse »

On peut combiner plusieurs opérations Projection et restriction étudiant identités des nanterrois nom prénom formation résidence MARTIN Marie MMIA Versailles BERNARD Louis Gestion Nanterre THOMAS Alice Anglais Bernard Suresnes nom prénom BERNARD Louis THOMAS Alice La restriction peut porter sur d’autres champs que la projection SELECT nom, prénom FROM étudiant WHERE résidence = "Nanterre";

Projection, produit cartésien et restriction étudiant adresse nom prénom formation référence MARTIN Marie MMIA 2 BERNARD Louis Gestion 3 THOMAS Alice Anglais Bernard MARIE Philippe 4 code adresse ville département 1 Paris 75 2 Versailles 78 3 Nanterre 92 4 Suresnes SELECT étudiant.nom, étudiant.prénom, adresse.ville FROM adresse, étudiant WHERE (adresse.[code adresse]=[référence]) AND (adresse.département=92); habitants des Hauts-de-Seine nom prénom ville BERNARD Louis Nanterre THOMAS Alice MARIE Philippe Suresnes

C’est une « clef primaire » C’est une « clef externe » Lien logique Ce champ « identifie » un enregistrement (il ne peut pas prendre la même valeur pour deux enregistrements différents) C’est une « clef primaire » Ce champ relie un enregistrement de « étudiant » à un enregistrement de « adresse » C’est une « clef externe » étudiant adresse nom prénom formation référence MARTIN Marie MMIA 2 BERNARD Louis Gestion 3 THOMAS Alice Anglais Bernard MARIE Philippe 4 code adresse ville département 1 Paris 75 2 Versailles 78 3 Nanterre 92 4 Suresnes Le couple (clef primaire, clef externe) permet de réaliser des liens logiques

Ici, le nom de la table est obligatoire JOINTURES SELECT étudiant.nom, étudiant.prénom, adresse.ville FROM adresse, étudiant WHERE (adresse.[code adresse]=[référence]) AND (adresse.département=92); Ici, le nom de la table est obligatoire La première clause de restriction est presque équivalente à une jointure interne SELECT étudiant.nom, étudiant.prénom, adresse.ville FROM étudiant INNER JOIN adresse ON étudiant.référence = adresse.[Code adresse] WHERE adresse.département = 92; Mais la jointure permet de créer des enregistrements alors que ce n’est pas le cas de la clause Where Il y a aussi des jointures externes qui permettent des calculs de relations plus élaborés Elles ne sont pas au programme de ce cours