Introduction aux Bases de Données Relationnelles

Slides:



Advertisements
Présentations similaires
Benoît Piranda Équipe SISAR Université de Marne La Vallée Bases de données Algèbre relationnelle, opérations Requêtes SQL.
Advertisements

Rappels. Les Systèmes de Gestion de Bases de Données (SGBD) L'algèbre relationnelle.
Informatique appliquée à la gestion Bases de données www. labri
Access Frédéric Gava (MCF)
Bases de données : modèlisation et SGBD
Le modèle logique des données relationnel MLD
Le Modèle Relationnel (Chapitre 4)
Le Modèle Logique de Données
Algèbre relationnelle
Planning 11 Séances 2 devoirs en TD Jeudi 25 mars Jeudi 13 mai.
Formation au référentiel 1 STG (Sciences et technologie de la gestion)
Programme Introduction aux BD et aux SGBD Le modèle relationnel
Année universitaire Système dinformation Le SQL (Structured Query Language) langage dinterrogation dune base de données.
Initiation au système d’information et aux bases de données
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Initiation au système d’information et aux bases de données
LMD: Langage de Manipulation de Données
Développement d’applications web
Contrôles d'accès aux données
Eléments d ’algèbre relationnelle
Rappel sur les bases de données et le vocabulaire
BASE DE DONNEES RELATIONNELLES
B.Shishedjiev - Modèle relationnel
Initiation à la conception de systèmes d'information
Introduction à la conception de Bases de Données Relationnelles
LANGAGES LIES AU MODELE RELATIONNEL
Les bases de données Cours assuré par: Mlle Smii imen
Chap 4 Les bases de données et le modèle relationnel
Bases de données et SGBD relationnels
SELECT {* | Expression [Alias] [,...] } FROM Table [WHERE Condition] [ORDER BY { Expression | Alias } [ ASC | DESC ] [NULLS FIRST | NULLS LAST ] [,...]
L’utilisation des bases de données
Modèle Logique de Données
Cas pratique : Interim.
Gestion des bases de données
SYSTEMES D’INFORMATION
MODELE RELATIONNEL concept mathématique de relation
Staf 2x Cours de bases de données
Cours de Base de Données & Langage SQL
Cours N°2 Base de Données & Langage SQL
Les concepts et les méthodes des bases de données
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation à la conception des systèmes d'informations
Michel Tollenaere SQL et relationnel ENSGI Cours MSI 2A Relationnel et SQL version 1.4 du 25 septembre 2007 (ajout jointures) 1 Modèle relationnel Historique.
1. Représentation des informations
Limiter et trier des données
Chapitre 3 La normalisation du modèle relationnel
Plan UE Introduction aux Bases de Données
Introduction.
Chapitre 5 : Le langage SQL
Bases de données   J-L Hainaut Partie 1 - Comprendre les bases de données Partie 2 - Utiliser les bases de données Partie 3 - Développer une base.
SQL Partie 1.
ANALYSE METHODE & OUTILS
Base de Données.
Bases de données.
JDBC L'API JDBC est utilisée pour utilisée pour intéragir avec une base de données.
1 PHP 5 Notions fondamentales (cours #5) Formation continue – Cégep de Sainte-Foy.
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.
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
Séance /10/2004 SGBD - Approches & Principes.
INTRODUCTION AUX BASES DE DONNEES
Introduction aux Bases de Données et au langage SQL
Initiation aux bases de données et à la programmation événementielle
INTRODUCTION AUX BASES DE DONNEES Base et métabase
Introduction Module 1.
Les bases de données Séance 4 Construction du Modèle Physique (la BDD)
Schéma de base de données Présentation. Conception du schéma logique  Transformation du schéma conceptuel en structures de données supportées par les.
Transcription de la présentation:

Introduction aux Bases de Données Relationnelles Chapitre 5 Introduction aux Bases de Données Relationnelles Cours VB 2007/2008

Introduction Une Base de Données est un ensemble de données mémorisé par un ordinateur, utilisé par de nombreuses personnes et possédant une organisation régie par un modèle de données. A. Flory, Bases de données : conception et réalisation, Editions Economica, Paris 1982 Les BD possèdent une organisation donc une structure régie par un modèle Remarque: Les données stockées dans une base sont indépendantes des programmes informatiques qui les utilisent ainsi que du type de mémoire auxiliaire sur laquelle elles sont stockées. Cours VB – ISG 2007/2008

Traitement des opérations des clients Exemple Traitement des opérations des clients User Programmes de comptes chèques Programmes de comptes d’épargne Programmes de prêts à tempérament Système de Gestion de Bases de Données (SGBD) Base de données sur la clientèle Cours VB – ISG 2007/2008

Critères et Conception d'une BD Une BD doit satisfaire cinq critères principaux: Bonne représentation du monde réel Non-redondance de l’information Indépendance des données par rapport aux traitements Sécurité et confidentialité des données Performance des applications et des requêtes La conception d’une BD suppose une démarche composées de plusieurs étapes Déterminer et identifier les problèmes Proposer des solutions possibles Modéliser le futur système Mettre en œuvre une solution Tester la solution proposée Maintenir et faire évoluer le système Cours VB – ISG 2007/2008

Les Systèmes de Gestion de Bases de Données (SGBD) Un SGBD est un outil logiciel qui permet, selon un modèle de BD particulier, de gérer les données en offrant les fonctionnalités suivantes : un langage de définition des données (LDD), c'est-à-dire un langage de définition du modèle (organisation physique) un langage de manipulation des données (LMD) pour ajouter, modifier, retrouver, supprimer des données; la gestion des règles assurant l'intégrité des données; la gestion de la confidentialité des données; la gestion des conflits d'accès simultanés aux données; la sécurité de fonctionnement, avec des outils de sauvegardes et reprises de la base. L'administrateur de la base fera appel à toutes ces fonctionnalités du SGBD. L'utilisateur final n'accédera généralement qu'au LMD Cours VB – ISG 2007/2008

Base de données relationnelles Le modèle relationnel a été défini par Codd dans les années 70 Un grand succès par rapport à ses prédécesseurs de type "hiérarchique", "réseau" etc. grâce à : La simplicité de la structure des données, La simplicité des opérateurs, L’indépendance entre les données et les applications. Exemples de SGBDR commercialisés : ACCESS, DB2, ORACLE, INGRES, SYBASE, INFORMIX, PARADOX, SQL Server, etc. Cours VB – ISG 2007/2008

I. Modèle conceptuel des Données (MCD) La modélisation des données sur le plan conceptuel, aboutit à une représentation schématique de l’ensemble des données et de leurs liens, au sein du domaine étudié. Le MCD traduit les choix ou contraintes de gestion fondamentaux exprimés à travers les concepts du modèle E/A (Entité-Association), traduction de E/R (Entity-Relationship) qui est un modèle conceptuel conçu dans les années 1970. Entité 1 Entité 2 Association Cours VB – ISG 2007/2008

I.1 Entité Une entité correspond à un objet abstrait ou concret que l’on perçoit de la réalité. Une entité est dotée d’une existence propre, ayant un intérêt pour l’organisme et facilement identifiable. Les entités permettent de décrire Des objets tangibles : employés, produits,.. Des objets abstraits : qualité, expertise, calendrier.. Transactionnels : contrat, commande,.. Elle est totalement définie par : Son nom Son identifiant (d’une façon unique) Ses attributs (au moins deux) Nom de l'entité CLIENT NumClient Nom Prénom Adresse Téléphone Solde identifiant attributs Cours VB – ISG 2007/2008

I.2 Identifiant Identifiant: C'est l'attribut ou l'ensemble d'attributs qui identifient un et un seul enregistrement. Un identifiant peut être simple (un seul attribut) (exemple: NumClient) ou composée (plusieurs attributs) (exemple: NumVoiture + NumSérie) Exemples : Numclient est un identifiant de l’entité CLIENT: Il permet d’identifier un client d’une manière unique. 2 clients différents ne peuvent pas avoir le même Numclient L’attribut Nom ne peut pas être un identifiant de l’entité CLIENT  2 clients peuvent avoir le même nom Sellami Mohamed – Sellami Ali Cours VB – ISG 2007/2008

1.3 Attribut & Occurence Un attribut (ou propriété) est le plus petit élément d’information manipulé. C’est une propriété caractéristique de l’entité. Il associe à chaque entité une valeur appartenant à un domaine. A chaque attribut est associé un et un seul domaine. Exemple: Le domaine de l'attribut couleur (rouge, blanc, bleu, noir, vert) Une occurrence d’une entité est l’ensemble des valeurs des attributs qui la caractérisent. Pour chaque entité il existe une ou plusieurs occurrences. Exemple: Occurrences de l'entité CLIENT NumClient Nom Prénom Adresse Téléphone Solde 133 Sellami Mohamed Z.I Manouba 71 645 765 1.200,000 134 Nabli Samir Z.I Ben Arous 71 380 476 2.800,000 Cours VB – ISG 2007/2008

I.4 Association Commande Produits NumCom RefProd … … Contenir Qt Une association est un lien ou relation entre deux ou plusieurs entités. Exemple: Une commande contient des articles. Il est possible de caractériser l’association par des attributs Exemple : l’association Contenir peut être porteuse de données concernant la quantité du produit commandé. On distingue : les associations n-aires qui relient plus de deux entités. les association binaires qui ne relient que deux entités. Commande NumCom … Produits RefProd … Contenir Qt Cours VB – ISG 2007/2008

I.5 Cardinalité (1) La cardinalité exprime le nombre minimum et maximum d’occurrences d’entités participatives à l’association (0,*) ou (1,*) : cardinalité minimale Une cardinalité min de 0 : l’entité peut avoir des occurrences qui ne participent pas à l’association – participation facultative Une cardinalité min de 1 : toute occurrence de l’entité doit obligatoirement participer à une occurrence de l’association – participation obligatoire (*,1) ou (*,n) : cardinalité maximale Cardinalité Commande NumCli … (1,n) (0,n) Produit Numprod … Contenir Qt Nom de l’association Attribut de l’association Cours VB – ISG 2007/2008

I.5 Cardinalité (2) ? Client NumCli … Facture NumFact … Avoir Une facture est attribuée à un et un seul client (min, max) : (1,1) Un client peut ne pas avoir de facture Un client peut avoir plusieurs factures (min,max) : (0,n) Facture NumFact … Client NumCli Avoir (1,1) (0,n) CIF Contrainte d’intégrité fonctionnelle (CIF) est une association particulière dont la cardinalité présente les valeurs 0,1 ou 1,1 entre une association et une entité. [un à plusieurs] ou[un à un] Cours VB – ISG 2007/2008

? I.5 Cardinalité (3) Qt Une commande contient au moins un produit Numprod … Commande NumCli Contenir Qt Une commande contient au moins un produit Une commande peut contenir plusieurs produits (min,max) : (1,n) Un produit peut ne pas être commandé Un produit peut être commandé dans plusieurs commandes (min, max) : (0,n) Qt Contenir Produit RefProd … Commande NumCommande (1,n) (0,n) CIM Contrainte d’intégrité multivaluée (CIM) [plusieurs à plusieurs] sont toutes associations que ne présentent pas les cardinalités 0,1 ou 1,1 entre une association et une entité Cours VB – ISG 2007/2008

II. Passage du modèle E/A au modèle Relationnel (1) On dispose du diagramme de modélisation E/A des données, il faut implanter la structure obtenue en machine sous forme d'un modèle relationnel. Nous allons donc transformer notre structure du niveau conceptuel « le diagramme E/A » sous une forme relationnelle « schéma relationnel » ou « modèle logique » au niveau logique. Ce Passage se fait à l’aide de règles de passage … Cours VB – ISG 2007/2008

II. Passage du modèle E/A au modèle Relationnel (2) Règle 1: Toute entité se traduit par une table relationnelle (avec les même attributs) t.q l'identifiant devient la clé primaire de la table Entité Identifiant Règle 1 Relation Clé primaire Règle 2 : Les CIF non porteuses de données disparaissent mais le lien est conservé. La clé primaire de la relation initialement de type (*,n) devient une clé étrangère dans la deuxième relation. CIF Association Entité 1 Identifiant 1 Entité 2 Identifiant 2 Forte 0 ou 1,n Faible 0 ou 1,1 Relation 1 Clé primaire 1 Relation 2 Clé primaire 2 # Clé étrangère 1 Règle 2 Cours VB – ISG 2007/2008

II. Passage du modèle E/A au modèle Relationnel (3) Règle 3 : Les CIM se transforment en relation. La clé de la relation est formée des identifiants des entités. CIM Entité 1 Identifiant 1 Entité 2 Identifiant 2 0 ou 1,n 0 ou 1,n Association Relation 1 Clé primaire 1 Relation 2 Clé primaire 2 Règle 3 Relation 3 # Clé 1 # Clé 2 Cours VB – ISG 2007/2008

II. Passage du modèle E/A au modèle Relationnel (4) Règle 4 : Toute association porteuse de données se transforme en relation quelque soit les cardinalités des liens. La clé de la relation est formée des identifiants des entités. Entité 1 Identifiant 1 Entité 2 Identifiant 2 Association Attribut 1 Attribut 2 Relation 1 Clé primaire 1 Relation 2 Clé primaire 2 Relation 3 # Clé 1 # Clé 2 Attribut 1 Attribut 2 Règle 4 Cours VB – ISG 2007/2008

Exemple Client NumCli …. Facture NumFact … Avoir Passer Qt Commande CIF (0,n) (1,1) Avoir (0,n) CIF Passer (1,1) CIM Commande NumCommande … (1,n) (0,n) Produit RefProd … Contenir Qt Cours VB – ISG 2007/2008

Exemple Client Facture NumCli NumFact … NumCli … Commande NumComm Produit RefProd … Contenir NumComm RefProd Qt Cours VB – ISG 2007/2008

Travail à faire Gestion de vol: Acteurs: Avions, Vol, Voyageur,… Gestion de bibliothèque Acteurs: Livres, Auteurs, Étudiants, Professeurs,… Gestion de la coupe d'Afrique Acteurs: Équipes, Joueurs, Arbitres, Matchs, Entraîneurs, Billets… Cours VB – ISG 2007/2008

III. Requêtes Requête = liste de conditions pour la sélection de certains enregistrements Poser une requête = avoir une vue particulière de la BD Langage algébrique : Collection d'opérations qui agissent sur des tables et produisent des tables en résultats. Opérateurs algébriques Opérateurs relationnels Sélection Jointure Projection Opérateurs ensemblistes Union Intersection Différence Produit cartésien Cours VB – ISG 2007/2008

III.1 Opérateurs Ensemblistes : a- Union () L'union est appliquée sur deux tables de même structure R1 et R2 pour obtenir une table R3 contenant l' ensemble des enregistrements de R1 et R2. Exemple Soient les deux tables Voitures1 et Voitures2. Voitures = Voitures1  Voitures2 Voitures1 NV Marque Série Puissance 1240 FORD 84 5 1456 BMW 80 7 Voitures2 NV Marque Série Puissance 1364 GOLF 86 6 1845 FORD 84 5 Voitures NV Marque Série Puissance 1240 FORD 84 5 Cours VB – ISG 2007/2008

III.1 Opérateurs Ensemblistes : b- Intersection() L'intersection est appliquée sur deux tables de même structure R1 et R2 pour obtenir une table R3 contenant l'ensemble des enregistrements appartenant à la fois à R1 et R2. Exemple: Soient les deux tables Voitures1 et Voitures2. Voitures = Voitures1  Voitures2 Voitures1 NV Marque Série Puissance 1240 FORD 84 5 1456 BMW 80 7 Voitures2 NV Marque Série Puissance 1364 GOLF 86 6 1845 FORD 84 5 Voitures NV Marque Série Puissance Cours VB – ISG 2007/2008

III.1 Opérateurs Ensemblistes : c- Différence (-) La différence est appliquée sur deux tables de même structure R1 et R2 pour obtenir une table R3 Contenant l'ensemble des tuples appartenant à R1 et n'appartenant pas à R2. Exemple: Soient les deux tables Voitures1 et Voitures2. Voitures = Voitures1 - Voitures2 Voitures1 NV Marque Série Puissance 1240 FORD 84 5 1456 BMW 80 7 Voitures2 NV Marque Série Puissance 1456 BMW 80 7 1364 GOLF 86 6 1845 FORD 84 5 Voitures NV Marque Série Puissance 1240 FORD 84 5 Cours VB – ISG 2007/2008

III.1 Opérateurs Ensemblistes: d- Produit cartésien () Le produit cartésien est appliqué sur deux tables R1 et R2 n'ayant pas nécessairement la même structure pour obtenir une relation R3 composée de l'ensemble des enregistrements obtenus suite à toutes les combinaisons des enregistrements de R1 et R2 Exemple: Soient les deux tables Voitures1 et Voitures2. Voitures = Voitures1  Voitures2 Voitures1 Marque Modèle FORD élance FORD flair Voitures2 Puissance 5 4 Voitures Marque Modèle Puissance FORD élance 5 FORD élance 4 FORD flair 5 FORD flair 4 Cours VB – ISG 2007/2008

III.2 Opérateurs Relationnels: a- Sélection () La sélection est une opération qui produit une nouvelle table en enlevant des enregistrements à la table de départ. () Exemple: Quels sont les prêts dont le taux est >= à 14% dans la relation prêt : Relation Prêt N°Prêt Nom TauxIntérêt Montant 150 AMEUR 13 10 000 161 BEN SALAH 13 5 000 162 DRIDI 15 2 000 167 FARHAT 14 20 000 171 AMEUR 13,5 15 000 Relation résultat 162 DRIDI 15 2 000 167 FARHAT 14 20 000 Cours VB – ISG 2007/2008

III.2 Opérateurs Relationnels: b- Projection () La projection est une opération qui produit une nouvelle table en enlevant des attributs à la table de départ. () Exemple: Soit la nouvelle relation TI (N°Prêt, Nom, TauxIntérêt) crée à partir de la relation Prêt. Relation Prêt N°Prêt Nom TauxIntérêt (%) Montant 150 AMEUR 13 10 000 161 BEN SALAH 13 5 000 162 DRIDI 15 2 000 167 FARHAT 14 20 000 171 AMEUR 13,5 15 000 Relation TI N°Prêt Nom TauxIntérêt (%) 150 AMEUR 13 161 BEN SALAH 13 162 DRIDI 15 167 FARHAT 14 171 AMEUR 13,5 Cours VB – ISG 2007/2008

III.3 Opérateurs Relationnels: c- Jointure () La jointure consiste à rapprocher selon une condition les enregistrements de deux tables R1 et R2 pour former une table R3. R1 et R2 n'ayant pas nécessairement la même structure. Chaque enregistrement dans R3 sera le résultat de la fusion d'un enregistrement de R1 et d'un enregistrement de R2 vérifiant la condition de rapprochement. Remarque : Si les tables R1 et R2 n'ont pas d'attributs en commun, la jointure sera assimilée à un produit cartésien. Exemple A B Marque Modèle FORD élégance flair Type Puissance élégance 5 4  Voiture Marque Modèle Puissance FORD élégance 5 4 Cours VB – ISG 2007/2008

IV. Le langage SQL Les SGBD qui présentent les données sous la forme de relations (ou tables) proposent un langage de requête dénommé SQL (Structured Query Language). SQL est un langage unique qui permet de décrire, de manipuler, de contrôler l'accès et d’interroger les bases de données relationnelles. Les SGBD (Systèmes de Gestion de Bases de Données) qui présentent les données sous la forme de tables proposent un langage de requête dénommé SQL (Structured Query Language). Présenté pour la première fois en 1973 par une équipe de chercheurs d’IBM, ce langage a rapidement été adopté comme standard. La première norme a été publiée en 1986 (SQL-86). La suivante, SQL-89, introduit notamment l’intégrité référentielle et constitue la base de tous les SGBD actuels. Tant la définition des structures de données que la manipulation du contenu (les données elles-mêmes) s’effectuent au moyen d’un unique langage, SQL. Une instruction SQL constitue une requête, c’est-à-dire la description d’une opération que le SGBD doit exécuter. Cours VB – ISG 2007/2008

IV. Le langage SQL SELECT [DISTINCT] {* | expr [AS alias], ... } FROM table [alias], ... [WHERE { conditions | sous conditions} ] [GROUP BY expr, ...] [HAVING conditions] [ORDER BY {expr | num}{ASC | DESC}, ...]; SELECT Précise les colonnes qui vont apparaître dans la réponse FROM Précise la (ou les) table intervenant dans l'interrogation WHERE Précise les conditions à appliquer sur les lignes. On peut trouver : - Des comparateurs : =, >, <, >=, <=,<> - Des opérateurs logiques : AND, OR, NOT - Les prédicats : IN, LIKE, NULL, ALL, SOME, ANY, EXISTS... GROUP BY Précise la (ou les) colonne de regroupement HAVING Précise la (ou les) conditions associées à un regroupement ORDER BY Précise l'ordre dans lequel vont apparaître les lignes de la réponse : - ASC : En ordre ascendant (par défaut) - DESC: En ordre descendant Cours VB – ISG 2007/2008

IV.1 Projection RESULTAT SELECT NoCli, Nom, Localité FROM Client Choisit le nom des colonnes de la (ou des) table(s) que l'on souhaite voir apparaître dans la réponse. Les colonnes sont données après la clause SELECT (* signifie tous). La ou les table(s) (ou relations) sont indiquées après la clause FROM. Client NoCli Nom Adresse Localité Catégorie Compte Principes L’exécution d’une requête SELECT produit un résultat qui est une table. D’une manière générale, une requête simple contient trois parties principales : - la clause SELECT précise les valeurs (nom des colonnes, valeurs dérivées) qui constituent chaque ligne de résultat, - la clause FROM indique les tables à partir desquelles le résultat tire ses valeurs, - la clause WHERE donne la condition ou les conditions de sélection que doivent satisfaire les lignes qui fournissent le résultat. 1 2 3 4 5 6 7 8 9 AMEUR BEN SALAH MRABET KRAIEM LABIDI CHAOUACHI GAFSI JELALI ROUISSI 23, a. Carthage 25, r. du Caire 112, r. d’Athène 5, a. de Madrid 180, r. de Rome 3, a. des Roses 14, r. de l’Eté 72, r. de la Gare 65, r. Lafayette Carthage Tunis Ariana La Marsa 1 2 3 125.000 -230.000 0.000 72.000 -258.000 870.000 320.000 35.000 RESULTAT Client Nom Localité AMEUR BEN SALAH MRABET KRAIEM LABIDI CHAOUACHI GAFSI JELALI ROUISSI Carthage Tunis Ariana La Marsa NoCli 1 2 3 4 5 6 7 8 9 SELECT NoCli, Nom, Localité FROM Client Cours VB – ISG 2007/2008

IV.2 Sélection Sélectionne des lignes (n-uplets, tuples) d'une (ou plusieurs) table(s) qui satisfont certaines conditions. La ou les conditions sont indiquées après la clause WHERE (on peut avoir plusieurs conditions séparées par des opérateurs logiques (and, or,…). Client Nom Adresse Localité Compte AMEUR BEN SALAH MRABET KRAIEM LABIDI CHAOUACHI GAFSI JELALI ROUISSI 23, a. Carthage 25, r. du Caire 112, r. d’Athène 5, a. de Madrid 180, r. de Rome 3, a. des Roses 14, r. de l’Eté 72, r. de la Gare 65, r. Lafayette Carthage Tunis Ariana La Marsa 125.000 -230.000 0.000 72.000 -258.000 870.000 320.000 35.000 Catégorie 1 2 3 NoCli 4 5 6 7 8 9 SELECT * FROM Client WHERE Localité="Ariana" Principes L’exécution d’une requête SELECT produit un résultat qui est une table. D’une manière générale, une requête simple contient trois parties principales : - la clause SELECT précise les valeurs (nom des colonnes, valeurs dérivées) qui constituent chaque ligne de résultat, - la clause FROM indique les tables à partir desquelles le résultat tire ses valeurs, - la clause WHERE donne la condition ou les conditions de sélection que doivent satisfaire les lignes qui fournissent le résultat. RESULTAT Nom Adresse Localité Compte MRABET JELALI 112, r. d’Athène 72, r. de la Gare Ariana 0.000 320.000 Catégorie 1 3 NoCli 8 Cours VB – ISG 2007/2008

IV.3 Projection & Sélection Client Nom Adresse Localité Compte AMEUR BEN SALAH MRABET KRAIEM LABIDI CHAOUACHI GAFSI JELALI ROUISSI 23, a. Carthage 25, r. du Caire 112, r. d’Athène 5, a. de Madrid 180, r. de Rome 3, a. des Roses 14, r. de l’Eté 72, r. de la Gare 65, r. Lafayette Carthage Tunis Ariana La Marsa 125.000 -230.000 0.000 72.000 -258.000 870.000 320.000 35.000 Catégorie 1 2 3 NoCli 4 5 6 7 8 9 SELECT NoCli, Nom FROM Client WHERE Localité="Ariana" RESULTAT Principes L’exécution d’une requête SELECT produit un résultat qui est une table. D’une manière générale, une requête simple contient trois parties principales : - la clause SELECT précise les valeurs (nom des colonnes, valeurs dérivées) qui constituent chaque ligne de résultat, - la clause FROM indique les tables à partir desquelles le résultat tire ses valeurs, - la clause WHERE donne la condition ou les conditions de sélection que doivent satisfaire les lignes qui fournissent le résultat. Client Nom MRABET JELALI NoCli 3 8 Cours VB – ISG 2007/2008

IV.4 Jointure Client Commande NoCli Nom Adresse Localité Catégorie Compte NoCom #NoCli Date 1 2 3 4 5 6 7 8 9 AMEUR BEN SALAH MRABET KRAIEM LABIDI CHAOUACHI GAFSI JELALI ROUISSI 23, a. Carthage 25, r. du Caire 112, r. d’Athène 5, a. de Madrid 180, r. de Rome 3, a. des Roses 14, r. de l’Eté 72, r. de la Gare 65, r. Lafayette Carthage Tunis Ariana La Marsa 1 2 3 125.000 -230.000 0.000 72.000 -258.000 870.000 320.000 35.000 100 101 102 103 104 105 106 107 108 9 8 4 5 2 3 1 09/09/99 07/12/99 03/01/00 05/04/00 12/12/00 15/02/01 09/07/01 16/04/01 12/04/02 SELECT Commande.NoCom, Client.NoCli, Nom, Adresse, Date FROM Commande, Client WHERE Commande.NoCli = Client.NoCli RESULTAT Nom AMEUR BEN SALAH MRABET KRAIEM LABIDI JELALI ROUISSII NoCli 1 2 3 4 5 8 9 NoCom 108 105 107 106 102 103 101 100 104 Adresse 23, a. Carthage 25, r. du Caire 112, r. d’Athène 5, a. de Madrid 180, r. de Rome 72, r. de la Gare 65, r. Lafayette Date 12/04/02 15/02/01 16/04/01 09/07/01 03/01/00 05/04/00 07/12/99 09/09/99 12/12/00 Cours VB – ISG 2007/2008