Systèmes d’information et Bases de données Préparée et enseignée par Ouafae Baida Université Abdelamalek Essaâdi Faculté des Sciences et Techniques de.

Slides:



Advertisements
Présentations similaires
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
Advertisements

Cours n°2 Implémentation et exploitation
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é.
UML EPITECH 2009 UML1 - Introduction UML – Définition – Historique – UML en entreprise – Couverture Concepts – Objet – Classe –
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 2ème partie Modèle Conceptuel des Données 2- Entités- Associations 4- Associations plurielles 3- Cardinalités 5- Associations réflexives.
1- Régles de normalisation 2ème partie : normalisation Modèle Conceptuel des Données 2- Les Formes Normales 3- Dépendances Fonctionnelles 4- Recap - Méthodologie.
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.
Initiation à la conception des systèmes d'informations. Cours N°4 : Modèle Logique de Données (MLD) Initiation à la conception des systèmes d'informations.
Le langage de définition de données B.T.S. S.I.O – SI3 –
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.
1- phpMyAdmin 3ème partie : Manipulation des données Le langage SQL 2- Gérer les tables 3- Gérer les données.
Chapitre 3: SQL-ORACLE. Concepts de SQL SQL est un langage d’interrogation de base de données relationnelles pour  Définir les données (LDD)  Interroger.
LE MODÈLE CONCEPTUEL DES DONNÉES Encadré par: Pr. LAMARI SIHAM Présenté par DAOUI CHAIMAA NEBLI HIND NMER ABDELMOUNIM OUTALAB SIHAM.
Système d’aide à la décision Business Intelligence
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
Module de gestion des tournées de livraison
Mettre à jour les données
4 Modèle conceptuel de données MCD
Systèmes d’Information
Environnement du développement de BD ORACLE REPORTS 10g
Ch.1 : Modélisation des systèmes par SysML
Introduction aux Systèmes de Gestion de Bases de données
ملخص Initiation à la sgbdr
Structured Query Language SQL DDL
Initiation aux bases de données et à la programmation événementielle
Université Stendhal - Grenoble
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
Généralité sur les bases de données
Les bases de données et le modèle relationnel
DARCY Lionel BTS SIO Option SLAM
Langage de Manipulation des Données LMD
SQL LID – INTERROGATIN DES DONNEES
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Introduction BD TABLES ET DONNÉES champs OU données, types de données
Cyber-Sphinx Séance 2.
Manipulation D’Une Base De Données
Structure D’une Base De Données Relationnelle
1 ANGAMAN LUDOVIC UTT-LOKO-ITER. Organisation  10 séances de 3h  Présentation des bases de données  TP/TD.
Le système d’information dans l’organisation
Modélisation et conception des Systèmes d ’information Formateur: Mr. AASSOU Abdelilah Ecole Pigier Nador Année scolaire : 2012/2013.
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Modèle entité-association Exercice client : Une petite entreprise souhaite concevoir une base de données pour la gestion des commandes de ses clients,
Introduction en systèmes d’information et bases de données B.Shishedjiev -Introduction en BD 1.
I Copyright © 2004, Oracle. Tous droits réservés. Introduction.
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.
Bouchemit lila 1. 2 Entité Bouchemit lila Non relation 3.
1. LE LANGAGE SQL DDL Version 2 - Janvier Le langage SQL-DDL
Les cas d’utilisation 420-KE2-LG.
1 CHAPITRE: GESTION DES STOCKS. 2 Plan Plan IntroductionDéfinitionNature du stockLes niveaux des stocks Suivi du stock: Méthodes d’approvisionnement Conclusion.
PRESENTATION ACCESS Editeur : Microsoft Environnement Windows (SE)
Informatique Master 1 - ANI Système de Gestion de Bases de Données.
TP1 - DBMAIN BFSH Lausanne - Switzerland - Tel Université de Lausanne.
Conception d’unebasede données MERISE ( MÉTHODE D’ ETUDE ET DE RÉALISATION INFORMATIQUE POUR LES SYSTÈMES D’ENTREPRISE )
Présentation du site Martine Cochet.
Merise le modèle de traitement
Systèmes d’Information et Application
Bases de Données Relationnelles(1)
1. LE LANGAGE SQL DDL Version 1 - Mai 2009 corrigé le 11/2/2011
MASTER 1ère année AIGEME Cours de Bases de données
1 Semestre stic Sébastien PARFAIT – Faculté de Médecine – Bureau 145.
DONNÉE DE BASE QM Manuel de formation. Agenda 2  Introduction  Objectif de la formation  Données de base QM: Caractéristique de contrôle Catalogue.
Transcription de la présentation:

Systèmes d’information et Bases de données Préparée et enseignée par Ouafae Baida Université Abdelamalek Essaâdi Faculté des Sciences et Techniques de Tanger Département Génie Informatique

Objectifs Modéliser un problème issu d’une situation réelle afin d’en déduire une structure de base de données Donner les savoir-faire nécessaires pour réussir à gérer et manipuler les bases de données

Systèmes d’information Le système d'information est un ensemble organisé de ressources qui permet de collecter, stocker, traiter et distribuer de l'information souvent grâce à un ordinateur

Base de données Une Base De Données (BDD) est un ensemble structuré de données enregistrées sur des supports informatique pour satisfaire simultanément plusieurs utilisateurs de façon sélective.

Système de gestion de bases de données (SGBD) Un Système de Gestion de Bases de données (SGBD) Un ensemble de logiciels systèmes permettant 1.Insérer 2.Modifier 3.Chercher 4.Supprimer 5.Partager 6.Protéger Efficacement, des données spécifiques dans une grande masse d’information.

Objectifs des SGBD Exploitation de gros volumes de données avec une structuration des données et méthodes d’accès efficaces. Exploitation par différents types d’utilisateurs avec des différents outils d’accès ou interfaces-utilisateurs. Gestion de données sensibles avec sécurité et fiabilité maximal.

Bonne représentation des données Etre capable de représenter individuellement les élèves les professeurs, les matières, …… de manière à ce qu'une action sur l'un n'entraîne pas systématiquement une action sur l'autre. Définir une méthode d'identification qui permette d'assurer que la même information est représentée une seule fois. Préserver le lien entre les élèves les professeurs, les matières, …… mais sans introduire de redondance.

Exemple : FST de Tanger la FST de Tanger veut developper une ipage web pour permettre aux étudiants de

La conception d'un système d'information Méthodologie MERISE

Définition MERISE est une méthode de conception, de développement et de réalisation de projets informatiques. Le but de cette méthode est d'arriver à concevoir un système d'information. La méthode MERISE est basée sur la séparation des données et des traitements à effectuer en plusieurs modèles conceptuels, logique et physiques.

Schéma de la méthodologie MERISE définit les flux d'informations à prendre compte les règles et les contraintes à prendre en compte représente un choix logiciel pour le système d'information. décrivant les contraintes dues à l'environnement

Schéma de la méthodologie MERISE Modèle conceptuel de communication Modèle conceptuel de données Modèle conceptuel logique Modèle conceptuel physique

Le Modèle Conceptuel des Communications (MCC) Diagramme représentant les Informations transmises et récupérées par le domaine de gestion. Les modèles de flux représentent ce qui doit être étudier dans le cadre du projet à partir de l’analyse des flux échangés. Le Modèle des flux de données permet de déterminer le système à modéliser (champ de l’étude) en indiquant ses frontières et en le décomposant en sous systèmes.

Le Modèle Conceptuel des Communications (MCC) Acteurs L’acteur représente une unité active intervenant dans le fonctionnement d’un système opérant. Un acteur peut : être stimulé par des flux o transformer des flux renvoyer des flux. Un acteur «fait quelque chose», il est actif

Le Modèle Conceptuel des Communications (MCC) Un acteur peut modéliser: Un partenaire extérieur à l’organisation: client, fournisseur,... Un domaine d’activité de l’organisation précédemment identifié: la comptabilité, la gestion du personnel,... Un ensemble d’activités: liquidation, contrôle,... Un élément structurel de l‘organisation: service, unité géographique, unité fonctionnelle.

Le Modèle Conceptuel des Communications (MCC) On distingue des acteurs internes ou externes Un acteur externe représente tout élément extérieur à l’organisation et échangeant des flux avec le domaine d’étude Un acteur interne peut être une personne physique ou morale appartenant au système, capable d’échanger des informations avec les autres acteurs ou partenaires.

Le Modèle Conceptuel des Communications (MCC) Flux Le flux représente un échange entre deux acteurs. Un flux a toujours son origine ou sa destination dans le domaine d’étude. Pour chaque flux, on indiquera: Son émetteur Son récepteur Le lot d’informations transmis (le message) Un flux est un passage d’objets d’un intervenant (l’émetteur) à un autre. L’objet est émis par un intervenant (l’émetteur) et transmis à un autre (le récepteur).

Exemple

Exemple : Gestion de commandes Les commandes des clients sont saisies au niveau des comptoirs d'accueils régionaux et sont transmises chaque soir au siège central de la société. Tous les matins, le service magasin du siège traite les commandes reçues la veille : il édite pour chaque commande des bons de réquisition. Ces bons sont transmis aux magasiniers qui sortent les articles des stocks, pointent manuellement les bons, puis apportent les articles au service emballage, afin qu'ils soient conditionnés le jour même. Dès le lendemain, le service emballage expédie les colis aux clients. En fin de semaine, le centre de traitement informatique du siège édite les factures qui correspondent aux commandes de la semaine.

Solution

Le Modèle Conceptuel de Traitement (MCT) Le modèle conceptuel des traitements permet de traiter la dynamique du système d'information, c'est-à-dire les opérations qui sont réalisées en fonction d'événements.

Les éléments de MCT

Etapes 1.Réaliser le graphe des flux (représentation des acteurs, événements et résultats externes 2.Pour chaque événement, recenser les opérations déclenchées, et/ou les événements internes produits. 3.Regrouper dans une même opération tous les traitements qui ont les mêmes déclencheurs dans une unité de temps, avec la même synchronisation

Représentation

Exemple MCT

Exercice Lorsqu’un client apporte une montre à réparer, le bijoutier évalue le montant des travaux. Si il estime qu’il atteindre la moitié de prix d’achat le bijoutier téléphone le client pour lui demande son accord. Quand la réparation est effectuée, le bijoutier Présente une facture qui place dans une enveloppe avec la montre réparé ainsi quand le client veut le bijoutier lui remis dans apparaît que le client est réglé ou qu’il présente la carte de garantie au bijoutier. Travail demandé : Etablir le M.C.T :

Le Modèle conceptuel des données (MCD) Définition Une représentation claire des données du SI en définissant les dépendances fonctionnelles de ces données entre elles. Objectif : représenter de façon structurée les données qui seront utilisées par le système d'information. Démarche Recenser et donner un nom à l’ensemble des données du domaine étudié. Etudier les relations existantes entre ces données (les dépendances fonctionnelles).

Les éléments de MCD MCD EntitépropriétéIdentifiantRelationCardinalité

Définition Une entité est une représentation d'un objet (physique ou abstraite) dans un Système d’information. La représentation d’une entité s’appelle une occurrence de l’entité. Chaque entité regroupe un ensemble de propriétés. Formalise Entité Nom de l’entité

Les propriétés : sont les informations de base qui décrivent les éléments (les entités) d’un Système d’information. Exemple: o Nom Etudiant o Prénom Etudiant o CIN o Adresse client sont des propriétés qui décrivent l’entité Etudiant Propriétés

Exemple Etudiant o Nom Etudiant o Prénom Etudiant o CIN o Adresse client

Exemples d’occurrences d’une entité: Concepts utilisés : Entité Etudiant o NomEtudiant: Alaoui o PrénomEtudiant: Ahmed o CIN: K o Adresse client: A1 Etudiant o NomEtudiant: saber o Prénom Etudiant : SARA o CIN : L o Adresse client: A2

Question : Dans les occurrences précédentes de l’entité etudiant. Est-ce qu’il est possible d’avoir 2 occurrences avec le même nom et prénom? c’est-à-dire, avoir 2 etudiantsdifférents mais avec le même nom et prénom ! Réponse : oui !!!

Définition C’est une propriété qui permet de connaître de façon unique et sûre les occurrences d’une entité donnée. Exemple d’une entité avec identifiant : Identifiant d’une entité Etudiant o CIN o NomEtudiant o Prénom Etudiant o Adresse client

Exemple d’occurrences avec identifiant choisis: Identifiant d’une entité

Exemple On désire automatiser les réservations des places disponibles dans les théâtres de la ville de Tanger. pour cela on dispose les informations suivantes : Nom de spectacle Durée par heur du spectacle Nom d’auteur Nom du théâtre Nombre de places de théâtre Adresse de théâtre Date début d’un spectacle dans un théâtre Date fin d’un spectacle dans un théâtre Nom de la personne ayant effectuée la réservation Numéro de CIN de la personne ayant effectuée la réservation Adresse de la personne ayant effectuée la réservation Date de réservation pour un spectacle dans un théâtre Nombre de places réservées par une personne dans un théâtre.

Une relation ou association est la liaison qui lie entre les entités d’un système d’information. Exemple: Un client peut commander des produits. o Les entités de notre SI sont : Client et Produit o La relation : Commander Relation ou association

Exemple Produit Client Commandé par quantité N° produit Référence ………… ……. N° client Nom Adresse ……….. propriétés Relation ou association 1,n 0, n Entités Cardinalités minimales Relation ou association Cardinalités maximal

Cardinalité d’une relation Une cardinalité est le nombre de fois où l’occurrence d’une entité participe aux occurrence de la relation.

Dans l’exemple précédent, nous devons poser les questions suivantes : 1.Combien de fois au minimum un client peut commander un produit ? 2.Combien de fois au maximum un client peut commander un produit ? 3.Un produit peut-être acheté au minimum par combien de clients ? 4.Un produit peut-être acheté au maximum par combien de clients ? Cardinalité d’une relation

Règles de base pour la construction d’un MCD Règles concernant les propriétés 1) Une propriété ne peut pas apparaître plusieurs fois dans un MCD Exemple : Une propriété Date ne peut pas apparaître simultanément dans une entité COMMANDE et une entité FACTURE Si c’était le cas, il faudrait remplacer Date par Date_commande et Date_facture par exemple

Règles de base pour la construction d’un MCD Règles concernant les entités  Toute entité doit comporter un identifiant qui permet de distinguer entre elles toutes les occurrences d’une même entité.  L’identifiant est placé en tête des propriétés et il est souligné.

Règles de base pour la construction d’un MCD Règles concernant les associations  L’identifiant d’une association est implicitement formé par la concaténation des identifiants des entités liées.  L’identifiant d’une association ne se représente pas au niveau du MCD.  Une association peut avoir des propriétés, mais ce n’est pas obligatoire

Exemple On désire automatiser les réservations des places disponibles dans les théâtres de la ville de Tanger. pour cela on dispose les informations suivantes : Nom de spectacle Durée par heur du spectacle Nom d’auteur Nom du théâtre Nombre de places de théâtre Adresse de théâtre Date début d’un spectacle dans un théâtre Date fin d’un spectacle dans un théâtre Nom de la personne ayant effectuée la réservation Numéro de CIN de la personne ayant effectuée la réservation Adresse de la personne ayant effectuée la réservation Date de réservation pour un spectacle dans un théâtre Nombre de places réservées par une personne dans un théâtre. R1. un spectacle peut être joué dans plusieurs théâtres mais à des dates différentes R2. un spectacle n’est joué dans une seule période dans un théâtre.

Etapes de la construction d’un MCD 1.Détermination du dictionnaire de données 2.Identification des règles de gestion du système d’information a automatiser 3.Etablissement des dépendances fonctionnelles 4.Construction du modèle conceptuel de données

Dictionnaire des données Le dictionnaire de données représente l’ensemble des données qui circulent dans le système d’information à automatiser.

Dictionnaire des données Nom de la donnée Format : alphabétique, alphanumérique, numérique, date, logique Longueur : approximative ou exacte Type : on met une X pour préciser est ce que c’est une données élémentaire ou calculée Règle de calcul : la formule de calcul pour une donnée de type calculée Règle de gestion : on indique (si nécessaire) la règle de gestion relative à la donnée

Dictionnaire des données : exemple Exemple

Règles de gestion Les règles de gestion est l’ensembles des informations qui vont nous aider à modéliser et concevoir notre SI et que nous venons de déduire d’après : ◦ Les interviews avec les différents acteurs du projet ◦ Analyse de l’existant ◦ L’étude de tous les documents(les factures, les commandes, les bons de livraison, notes …).

Dépendances fonctionnelles Définition Une donnée (B) est en dépendance fonctionnelle d’une donnée (A), quand la connaissance d ’une valeur de la donnée (A) permet d ’identifier une et une seule valeur de la donné (B) Représentation A  B

Dépendances fonctionnelles Exemple (Source) (But) Cod_Art  Nom_Art Cod_Cli  Nom_Cli, Pre_Cli

Dépendances fonctionnelles complètes Définition Une DFC est une DF dont la source est composée de plusieurs attributs et aucun sous ensemble d’attributs de la source n’est en dépendance avec le but Notation : (Attribut,.., Attribut)  Attribut

Dépendances fonctionnelles complètes Exemples (Num_Cmd, Nom_Cli)  Pre_Cli N’est pas une DFC (Num_Cmd, Cod_Art)  Qte_Cmd Est une DFC

Notion de la Relation  Une relation est un ensemble des attributs (données) caractérisée par un nom.  La clé d’une relation est la source, d’une Dépendance Fonctionnelle, de tous les attributs de la relation.

Normalisation de dictionnaire de données Première forme normale Deuxième forme normale Troisième forme normale Forme normale de BOYCE/CODD

Normalisation de dictionnaire de données Première forme normale Une relation est en 1.F.N: Si elle possède une clé. Tous les attributs sont atomiques Exemples (Nom_cli, Pre_Cli) : n’est pas en 1FN (Num_Cmd, Date_Cmd, Total) : est p en 1FN

Normalisation de dictionnaire de données Deuxième forme normale Une relation est en 2.F.N:  En 1.F.N  Toute colonne qui n ’appartient pas à la clé n’est pas en dépendance fonctionnellement avec un sous ensemble strict de cette clé

Normalisation de dictionnaire de données Deuxième forme normale Exemples (Cod_cli, Num_Com, Date_Com) Est en 1FN mais, n’est pas en 2FN ??? Num_Com  Date_Com

Normalisation de dictionnaire de données Troisième forme normale Une relation est en 3.F.N: En 2.F.N Toutes les dépendances fonctionnelles issus de la clé sont directes (Pas de transitivité de DF).

Normalisation de dictionnaire de données Troisième forme normale Exemples (Num_Com, Cod_cli, Date_Com, Nom_cli) Est en 2FN mais, n’est pas en 3FN ??? Num_Com  Cod_cli  Nom_cli

Passage des DF vers le MCD Règle 1: Toute DF sera transformée à une entité dont :  L’identifiant est la source de la DF  Les propriétés sont les buts de la DF Exemple : A  B1, B2, B3 Nom entité A* B1 B2 B3

Passage des DF vers le MCD Règle 2: Dans le cas où le but d’une DF contient une propriété représente la source d’une autre DF alors les 2 DF seront liées par une relation

Passage des DF vers le MCD Exemple : A1  B1, B2, B3, A2 A2  C1, C2, C3 Nom entité A1* B1 B2 B3 Nom entité A2* C1 C2 C3 Nom Relation

Passage des DF vers le MCD Règle 3: Dans le cas où la source d’une DF est composée de deux propriétés A1 et A2. Alors cette DF sera transformée à une relation entre l’entité qui contient les propriétés de la 2 ème DF et l’entité contenant les propriétés de la 3 ème DF

Passage des DF vers le MCD Exemple 1: A1 + A2  C1, C2, C3 A1  B1, B2 A2  D1, D2 Nom entité A1* B1 B2 Nom entité A2* D1 D2 Nom Relation C1 C2 C3

Passage des DF vers le MCD Exemple 2: Si l’une des propriétés A1 ou A2 ne sont pas des sources d’une DF on doit crée une entité contenant la seule propriété A1 ou A2 A1 + A2  C1, C2, C3 A1  B1, B2 Nom entité A1* B1 B2 Nom entité A2* Nom Relation C1 C2 C3

Modèle Logique des données Le Modèle Logique des Données (MLD) définit l’organisation logique des données à partir du Modèle Conceptuel des Données (MCD) sous forme des tables ou des relations

Le MCD ne peut pas être implanté dans une base de données sans modification. Il est obligatoire de transformer ce modèle. On dit qu’on effectue un passage du modèle conceptuel de données vers le modèle logique de données. Le MLD pourra être implanté dans une base de données relationnelle

Règles de passage de MCD à MLD Règle numéro 1 a)Une entité du MCD devient une relation, c’est à dire une table. Dans un SGBD de type relationnel, une table est une structure tabulaire dont chaque ligne correspond aux données d'un objet enregistré et où chaque colonne correspond à une propriété de cet objet. Une table contiendra donc un ensemble d’enregistrements. Une ligne correspond à un enregistrement. Une colonne correspond à un champ. La valeur prise par un champ pour un enregistrement donné est située à l’intersection ligne-colonne correspondant à enregistrement-champ. Il n’y a pas de limite théorique au nombre d’enregistrements que peut contenir une table. Par contre, la limite est lié à l’espace de stockage.

Règles de passage de MCD à MLD Règle numéro 1 b) Son identifiant devient la clé primaire de la relation. La clé primaire permet d’identifier de façon unique un enregistrement dans la table. Les valeurs de la clé primaire sont donc uniques. Les valeurs de la clé primaire sont obligatoirement non nulles. Dans la plupart des SGBDR, le fait de définir une clé primaire donne lieu automatiquement à la création d’un index. c) Les autres propriétés deviennent les attributs de la relation. Exemple

Règles de passage de MCD à MLD Règle numéro 2 Une association de type 1:N (c’est à dire qui a les cardinalités maximales positionnées à « 1 » d’une côté de l’association et à « n » de l’autre côté) se traduit par la création d’une clé étrangère dans la relation correspondante à l’entité côté « 1 ». Cette clé étrangère référence la clé primaire de la relation correspondant à l’autre entité. Exemple

Règles de passage de MCD à MLD Règle numéro 3 Une association de type N :N (c’est à dire qui a les cardinalités maximales positionnées à « N » des 2 côtés de l'association) se traduit par la création d’une relation dont la clé primaire est composée des clés étrangères référençant les relations correspondant aux entités liées par l’association. Les éventuelles propriétés de l’association deviennent des attributs de la relation.. Exemple

MLD Langage de communicatio n SQL SGBD

SQL Le SQL (Structured Query Language) est un langage permettant de communiquer avec une base de données. Ce langage informatique est notamment très utilisé par les développeurs web pour communiquer avec les données d’un site web. SQL est un langage qui permet de lire, insérer, modifier et supprimer des données dans une base.

SQL & DATABASE La création d’une base de données en SQL est possible en ligne de commande. Même si les systèmes de gestion de base de données (SGBD) sont souvent utilisés pour créer une base, il convient de connaître la commande à utiliser, qui est très simple. Syntaxe CREATE DATABASE ma_base CREATE DATABASE IF NOT EXISTS ma_base L’option IF NOT EXISTS permet juste de ne pas retourner d’erreur si une base du même nom existe déjà. La base de données ne sera pas écrasée DROP DATABASE ma_base. supprimer toutes les tables et toutes les données de cette base.

SQL & TABLE Syntaxe CREATE TABLE nom_de_la_table( colonne1 type_donnees, colonne2 type_donnees, colonne3 type_donnees, colonne4 type_donnees ) type_donnees : (INT, DATE, TEXT …). NOT NULL : empêche d’enregistrer une valeur nulle pour une colonne. DEFAULT : attribuer une valeur par défaut si aucune données n’est indiquée pour cette colonne lors de l’ajout d’une ligne dans la table. PRIMARY KEY : indiquer si cette colonne est considérée comme clé primaire pour un index FOREIGN KEY: indiquer si cette colonne est considérée comme clé étrangère pour un index

SQL & TABLE Exemple CREATE TABLE utilisateur ( id INT PRIMARY KEY NOT NULL, nom VARCHAR(100), prenom VARCHAR(100), VARCHAR(255), date_naissance DATE, pays VARCHAR(255), ville VARCHAR(255), code_postal VARCHAR(5), nombre_achat INT )

SQL & TABLE La commande ALTER TABLE en SQL permet de modifier une table existante. Il est ainsi possible d’ajouter une colonne, d’en supprimer une ou de modifier une colonne existante, par exemple pour changer le type. Syntaxe Ajouter une colonne ALTER TABLE nom_table ADD nom_colonne type_donnees Supprimer une colonne ALTER TABLE nom_table DROP nom_colonne Modifier une colonne ALTER TABLE nom_table MODIFY nom_colonne type_donnee Renommer une colonne ALTER TABLE nom_table CHANGE colonne_ancien_nom colonne_nouveau_nom type_donnees Supprimer une table DROP TABLE nom_table

SQL & TABLE INSERT INTO : insérer des enregistrements UPDATE : mettre à jour les données des enregistrements DELETE FROM : supprimer des enregistrements SYNTAXE INSERT INTO nom-Table VALUES ("Valeur1","valeur2"); UPDATE nom-Table SET colonne2="valeur1", WHERE colonne 1="valeur"; DELETE FROM nom-Table WHERE colonne1=“valeur1"; EXEMPLE INSERT INTO Personnes VALUES ("Machin","Pierre"); INSERT INTO Personnes (Nom) VALUES ("Truc"); UPDATE Personnes SET Prénom="Henri" WHERE Nom="Truc";

SQL & SELECT L’utilisation la plus courante de SQL consiste à lire des données issues de la base de données. Cela s’effectue grâce à la commande SELECT, qui retourne des enregistrements dans un tableau de résultat. Cette commande peut sélectionner une ou plusieurs colonnes d’une table. Syntaxe SELECT nom_du_champ FROM nom_du_tableau Exemple SELECT ville FROM client Afficher les villes de tous les clients SELECT nom, prenom FROM client Afficher les noms et les prenoms de tous les clients SELECT * FROM client Afficher toutes les informations des clients

SELECT & DISTINCT Pour éviter des redondances dans les résultats il faut simplement ajouter DISTINCT après le mot SELECT. Syntaxe SELECT DISTINCT ma_colonne FROM nom_du_tableau EXEMPL SELECT DISTINCT prenom FROM client Afficher les prénoms des clients sans doublans

SELECT & WHERE La commande WHERE dans une requête SQL permet d’extraire les lignes d’une base de données qui respectent une condition. Cela permet d’obtenir uniquement les informations désirées. SYNTHAXE SELECT nom_colonnes FROM nom_table WHERE condition EXEMPLE SELECT * FROM client WHERE ville = 'paris'

SELECT & GROUPED BY La commande GROUP BY est utilisée en SQL pour grouper plusieurs résultats et utiliser une fonction de totaux sur un groupe de résultat. Sur une table qui contient toutes les ventes d’un magasin, il est par exemple possible de liste regrouper les ventes par clients identiques et d’obtenir le coût total des achats pour chaque client SYNTAXE SELECT colonne1, fonction(colonne2) FROM table GROUP BY colonne1 EXEMPLE SELECT client, SUM(tarif) FROM achat GROUP BY client

SQL & fonctions de statistiques AVG() pour calculer la moyenne d’un set de valeur. Permet de connaître le prix du panier moyen pour de chaque client COUNT() pour compter le nombre de lignes concernées. Permet de savoir combien d’achats a été effectué par chaque client MAX() pour récupérer la plus haute valeur. Pratique pour savoir l’achat le plus cher MIN() pour récupérer la plus petite valeur. Utile par exemple pour connaître la date du premier achat d’un client SUM() pour calculer la somme de plusieurs lignes. Permet par exemple de connaître le total de tous les achats d’un client

Exemple Soit la base relationnelle de données suivante U(NumU, NomU, VilleU) P(NumP, NomP, Couleur, Poids) F(NumF, NomF, Statut, VilleF) PUF(NumP, NumU, NumF, Quantité) U : une usine est d’écrite par son numéro NumU, son nom,NomU et la ville VilleU où elle est située P : un produit est décrit par son numéro NumP, son nom NomP, sa couleur et son poids F : un fournisseur est décrit par son numéro NumP, son nom NomF, son statut (sous-traitant, client...) et la ville VilleF où il est domicilié PUF : le produit de numéro NumP a été délivré à l’usine de numéro NumU par le fournisseur de numéro NumF dans une quantité donnée

Questions Exprimez en SQL 1.Créer cette base de données 2.Ajouter un nouveau fournisseur avec les attributs de votre choix 3.Supprimer tous les produits de couleur noire et de numéros compris entre 100 et Changer la ville du fournisseur 3 par Toulouse 5.Donnez le numéro, le nom, la ville de toutes les usines 6.Donnez le numéro, le nom, la ville de toutes les usines de Paris 7.Donnez les numéros des fournisseurs qui approvisionnent l’usine de numéro 2 en produit de numéro Donnez les noms et les couleurs des produits livrés par le fournisseur de numéro 2 9.Donnez les numéros des fournisseurs qui approvisionnent l’usine de numéro 2 en un produit rouge 10.Donnez les noms des fournisseurs qui approvisionnent une usine de Paris ou de Créteil en produit rouge 11.Donnez les numéros des produits livrés à une usine par une fournisseur de la même ville