Différences
Ci-dessous, les différences entre deux révisions de la page.
| si3 [2018/10/15 14:17] – [Statistiques] jcheron | si3 [2019/08/31 14:20] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ===== TD n°7 -2019 ===== | ||
| + | ==== Phase 1 ==== | ||
| + | A partir des règles de gestion données à l' | ||
| + | |||
| + | ==== Phase 2 ==== | ||
| + | On utilisera pour les exemples la base précédemment élaborée. | ||
| + | |||
| + | === Objectifs : === | ||
| + | * Rédaction de mode opératoire/ | ||
| + | * Prise en main de bases de données | ||
| + | * SQL : LDD (Langage de Définition de Données) | ||
| + | |||
| + | <wrap round info>A rédiger dans 2 documents différents à déposer sur le Drive</ | ||
| + | |||
| + | === Travail à faire === | ||
| + | |||
| + | Pour chaque SGDB (MariaDb, SQLite) : | ||
| + | - Présenter le sommairement (caractéristiques, | ||
| + | - Documenter les manipulations suivantes | ||
| + | - Installation | ||
| + | - Création base de données (CREATE DATABASE) | ||
| + | - Création table (CREATE TABLE) [! clé primaire, types de données, auto-increment] | ||
| + | - Modification table (ALTER TABLE) | ||
| + | - Ajout contraintes de clé étrangère (ALTER TABLE ... ADD CONSTRAINT...) | ||
| + | - Suppression (DROP TABLE, DATABASE, CONSTRAINT) | ||
| + | - Ajout d' | ||
| + | - Création d'une vue (CREATE VIEW ...) | ||
| + | |||
| + | Consignes, pour chaque SGDB : | ||
| + | * Utiliser l' | ||
| + | * Préciser les particularités SQL (non respect des normes) | ||
| + | |||
| + | __**Liens :**__ | ||
| + | |||
| + | * https:// | ||
| + | * https:// | ||
| + | |||
| + | |||
| + | ==== Commandes de base de l' | ||
| + | |||
| + | |||
| + | |< | ||
| + | ^Opération ^Mysql ^PostGreSQL ^SQLite ^ | ||
| + | |**Accès à l' | ||
| + | |**Lister databases** | SHOW DATABASES; | | | ||
| + | |**Sélectionner base** | USE dbName; | | | ||
| + | |**Lister tables** | SHOW TABLES; | .tables | | ||
| + | |**Infos table** | DESCRIBE tableName; | .schema tableName | | ||
| + | |||
| ===== TD n°1 : openfootball ===== | ===== TD n°1 : openfootball ===== | ||
| Ligne 88: | Ligne 137: | ||
| - en 1ère mi-temps | - en 1ère mi-temps | ||
| - en 2ème mi-temps | - en 2ème mi-temps | ||
| + | - par poule | ||
| + | - par jour | ||
| - dans le temps supplémentaire | - dans le temps supplémentaire | ||
| - dans les prolongations | - dans les prolongations | ||
| Ligne 105: | Ligne 156: | ||
| - en 2ème mi-temps | - en 2ème mi-temps | ||
| - dans le temps supplémentaire | - dans le temps supplémentaire | ||
| + | - Par poule | ||
| + | - Par jour | ||
| - Classement selon le nombre de victoires par équipe | - Classement selon le nombre de victoires par équipe | ||
| Ligne 113: | Ligne 166: | ||
| ==== Base de données à importer : ==== | ==== Base de données à importer : ==== | ||
| {{: | {{: | ||
| + | |||
| + | ===== TD n°4 ===== | ||
| + | ==== Compréhension de la Base de données ==== | ||
| + | |||
| + | * Démarrer les serveurs Apache et MariaDb | ||
| + | * Créer la base de données en important le script depuis phpMyAdmin : {{: | ||
| + | |||
| + | A partir de MySQL Workbench :\\ | ||
| + | * Générer le shéma de la base de données par reverse Engineering | ||
| + | * Expliquer la structure de la base. | ||
| + | ==== Manipulations SQL ==== | ||
| + | |||
| + | A partir de MySQL Workbench :\\ | ||
| + | Créer les vues permettant de répondre aux questions suivantes : | ||
| + | |||
| + | Dans le document sur le Drive, reprendre les interrogations, | ||
| + | |||
| + | - Bacs : Afficher la liste des Bacs (toutes les infos) | ||
| + | - EtudiantsDeCaen : Afficher les étudiants habitant à Caen (nom et prénom) | ||
| + | - EtudiantsAPied : Afficher les étudiants n' | ||
| + | - EtudiantsBac : Afficher les étudiants et leur Bac d' | ||
| + | - EtudiantsBacGeneral : Afficher les étudiants ayant fait un Bac général (nom, prénom, bac) | ||
| + | - EtudiantsPostBac : Afficher les étudiants ayant fait une poursuite d' | ||
| + | - EtudiantNavigateur : Afficher la liste des navigateurs utilisés par 1 étudiant précis dont on connaît le nom (afficher les noms des navigateurs) | ||
| + | - ChromeUsers : Afficher la liste des utilisateurs de Chrome (afficher nom de l' | ||
| + | - EtudiantsParCommune : Calculer et afficher le nombre d' | ||
| + | - EtudiantsParBac : Calculer et afficher le nombre d' | ||
| + | - EtudiantsParNavigateur : Calculer et afficher le nombre d' | ||
| + | |||
| + | |||
| + | ===== TD n°5 : Compte Google ===== | ||
| + | |||
| + | <wrap round info>A rédiger dans un document à déposer sur le Drive</ | ||
| + | |||
| + | |||
| + | Gestion de l' | ||
| + | * Établir et rédiger les règles de gestion | ||
| + | * Concevoir la structure de la base de données (à partir de Mysql Workbench) | ||
| + | * Créer la base de données depuis Mysql Workbench | ||
| + | * Intégrer des données de test réalistes (compte, favoris, historique) dans la base, pour vérifier sa cohérence | ||
| + | |||
| + | {{:: | ||
| + | |||
| + | * Intégrer la règle de gestion suivante : | ||
| + | * Les favoris sont stockés dans des dossiers (ayant un nom). | ||
| + | * Ces dossiers sont structurés hiérarchiquement (chaque dossier a éventuellement un parent). | ||
| + | |||
| + | * Répondez en SQL aux interrogations suivantes : | ||
| + | - Informations sur le compte d'un utilisateur (x) | ||
| + | - historique de la journée | ||
| + | - historique entre 2 dates définies (date1 et date2) | ||
| + | - Liste des recherches d'un utilisateur, | ||
| + | - nombre de consultations par site (url) | ||
| + | - moyenne du nombre de site consultés par jour | ||
| + | - liste des 10 sites les plus consultés | ||
| + | - liste des favoris | ||
| + | - liste des favoris dans un dossier précis (dossierA) | ||
| + | - nombre de favoris par dossier | ||
| + | - nombre de favoris par compte, nombre de liens dans l' | ||
| + | |||
| + | ===== Td n°6 : Compte Google - Évolutions ===== | ||
| + | |||
| + | <wrap round info>A rédiger dans un document à déposer sur le Drive</ | ||
| + | |||
| + | |||
| + | |||
| + | ==== Évolutions de la base de données : ==== | ||
| + | |||
| + | On souhaite ajouter les informations permettant de sécuriser le compte : | ||
| + | * mot de passe | ||
| + | * Numéro de mobile (pour envoi de SMS de contrôle ou de récupération de password) | ||
| + | * Email de récupération de mot de passe | ||
| + | |||
| + | A chaque connexion dans un nouveau contexte (Lieu, Matériel, logiciels), on mémorisera : | ||
| + | * L' | ||
| + | * Le système d' | ||
| + | |||
| + | L' | ||
| + | |||
| + | Pour chaque contexte, on retiendra également les dates et heures de connexion. | ||
| + | |||
| + | Il est possible de rattacher un ou plusieurs comptes de messagerie externes à son compte Google mail :\\ | ||
| + | Pour chaque compte, on mémorise son adresse, les identifiants de connexion (user + password), ainsi que l' | ||
| + | |||
| + | < | ||
| + | <div class=" | ||
| + | <ul> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ul> | ||
| + | </ | ||
| + | </ | ||
| + | ==== Interrogation de données ==== | ||
| + | |||
| + | - Lister les informations relatives à un compte (mail, tél, email de récupération) | ||
| + | - Afficher chaque compte, et le nombre de comptes mail associés | ||
| + | - Afficher chaque compte, et les comptes mail associés | ||
| + | - Lister les comptes (principaux) ayant un compte mail associé avec le serveur POP : pop.free.fr | ||
| + | - Afficher la moyenne du nombre de comptes associés par compte principal | ||
| + | - Afficher les contextes des comptes | ||
| + | - Afficher les contextes liés à votre compte | ||
| + | - Comptabiliser le nombre de connexion par contexte sur votre compte | ||
| + | - Afficher la liste des connexions, en précisant le contexte, et le compte | ||
| + | |||