1- Introduction 1ère partie Le langage SQL 2- Connexion 3- Structure & Contenu 4- Requêtes
1- Introduction Le langage SQL
1- Introduction Le langage SQL (Structured Query Language) peut être considéré comme le langage d’accès normalisé aux bases de données. Raisons de son succès : sa simplicité son universalité : langage standard utilisé par quasiment tous les SGBD. Limites : nécessite la plupart du temps un langage de programmation complémentaire pour le traitement de l'information.
Le langage SQL 1- Introduction Périmètres du cours... Un serveur de SGBD Choix du SGBD : MySQL Une Base de Données : qlio Une interface : phpMyAdmin 1 administrateur 12 utilisateurs Logiciel : Humain :
Le langage SQL 1- Introduction Le langage SQL permet la gestion des droits sur le SGBD : Quel utilisateur peut faire quelle action ?...d'où l'interaction homme/machine
2- Connexion Le langage SQL
2- Connexion Ouvrir Firefox Entrer l'adresse : /phpMyAdmin Se loguer : qlio / qlio Accéder à phpMyAdmin : Remarque : Dans l'immédiat, un seul utilisateur est créé, vous constatez cependant que le serveur autorise une connexion multiple pour un même utilisateur.
Le langage SQL 2- Connexion
Le langage SQL 2- Connexion
Le langage SQL 2- Connexion
3- Structure & Contenu Le langage SQL
3- Structure & Contenu Correspondent à des entités (structure) Sont constituées de colonnes (structure) Contiennent des enregistrements (valeurs) Tables : Correspondent à des attributs Décrivent la structure des attributs Colonnes Structure : une base de donnée contient des qui contiennent des
Le langage SQL 3- Structure & Contenu Se positionner sur la Base de Données « qlio » Ouvrir la console SQL Taper « SHOW TABLES » puis Exécuter. Résultat ? SHOW Application : Commandes de visualisation.
Le langage SQL 3- Structure & Contenu Se positionner sur la Base de Données « qlio » Ouvrir la console SQL Taper « SHOW TABLES » puis Exécuter. Taper « SHOW COLUMNS FROM » Résultat ? SHOW Application : Commandes de visualisation.
Le langage SQL 3- Structure & Contenu 1- Taper « SELECT * FROM animal » puis cliquer sur le bouton « afficher » de la table animal. SELECT Application : Commandes de visualisation.
Le langage SQL 3- Structure & Contenu 1- Taper « SELECT * FROM animal » puis cliquer sur le bouton « afficher » de la table animal. 2- Taper « SELECT origine FROM animal » puis « SELECT DISTINCT origine FROM animal » SELECT Application : Commandes de visualisation.
Le langage SQL 3- Structure & Contenu 1- Taper « SELECT * FROM animal » puis cliquer sur le bouton « afficher » de la table animal. 2- Taper « SELECT origine FROM animal » puis « SELECT DISTINCT origine FROM animal » 3- Taper « SELECT DISTINCT * FROM animal » SELECT Application : Commandes de visualisation. Vos premières conclusions ?
Le langage SQL 3- Structure & Contenu VARCHAR (anciennement CHAR) : chaînes de caractères. Alphanumériques : INT (ou INTEGER) : entier. FLOAT, REAL, DOUBLE,... : nombre décimal Numériques Les principaux types de données Temporels DATE : date, stockée au format AAAA-MM-JJ. TIME : temps sur 24 heures (HH:MM:SS)
Le langage SQL 4- Requêtes L'outil, le seul : la commande SELECT Vous avez déjà effectué vos premières requêtes sans le savoir. La particularité de la commande SELECT est qu'elle est la seule à retourner du contenu. Jusqu'à présent, vos requêtes retournaient la liste de tous les enregistrements contenus dans l'unique table passée en paramètre.
Le langage SQL 4- Requêtes SELECT : la clause WHERE Filtre : la clause WHERE fournit 1 ou plusieurs tests logiques destinés à ne retenir qu'une partie des enregistrements. 2 fonctions essentielles Application - taper la commande : SELECT nom FROM animal WHERE espece = 'Lion'. Faire un filtre de votre choix sur une autre table.
Le langage SQL 4- Requêtes SELECT : la clause WHERE Opérateurs logiques : ET et OU Ils permettent de filtrer selon plusieurs paramètres simultanés. Application - taper la commande : SELECT nom FROM animal WHERE espece = 'Lion' OR origine = 'Tchad' Filtres – les opérateurs
Le langage SQL 4- Requêtes SELECT : la clause WHERE Opérateurs logiques : ET et OU Ils permettent de filtrer selon plusieurs paramètres simultanés. Application - taper la commande : SELECT * FROM repas WHERE heure = '11:00:00' AND heure = '11:30:00' :: Comment faut-il modifier la requête ? Filtres – les opérateurs
Le langage SQL 4- Requêtes SELECT : la clause WHERE Opérateurs de comparaison : = NOT = (différent, autre écriture fréquente : <>), = > Filtres – les opérateurs
Le langage SQL 4- Requêtes SELECT : la clause WHERE Filtres – les opérateurs Application - taper les commandes : SELECT * FROM animal WHERE date_arrivee >= ' ' SELECT * FROM espece WHERE ordre NOT = 'Singe' SELECT * FROM repas WHERE quantite > 1 SELECT * FROM animal WHERE date_arrivee >= ' ' AND date_depart <= ' '
Le langage SQL 4- Requêtes SELECT : la clause WHERE Opérateur IN : Liste de paramètres : permet de rechercher si une valeur se trouve dans un ensemble donné, quel que soit le type des valeurs de référence spécifiées (alpha, numérique, date…). Filtres – les opérateurs Application - taper la commande : SELECT * FROM animal WHERE espece IN ('Lion', 'Ours','Léopard');
Le langage SQL 4- Requêtes SELECT : la clause WHERE Opérateur BETWEEN : Filtre les valeurs comprise entre les deux valeurs passées en paramètres. Filtres – les opérateurs Application - taper la commande : SELECT * FROM repas WHERE heure BETWEEN '10:45:00' AND '12:15:00';
Le langage SQL 4- Requêtes SELECT : la clause WHERE Opérateur LIKE : Filtre les valeurs dont une partie du contenu correspond à la valeur passée en paramètres. Filtres – les opérateurs Exemples : LIKE ch% : la valeur recherchée doit commencer par 'ch' LIKE %zé : la valeur recherchée doit finir par 'zé' LIKE %impan% : la valeur recherchée doit contenir 'impan'
Le langage SQL 4- Requêtes SELECT : la clause WHERE Opérateur LIKE : Filtre les valeurs dont une partie du contenu correspond à la valeur passée en paramètres. Filtres – les opérateurs Application - taper la commande : SELECT * FROM animal WHERE nom LIKE '%ma%';
Le langage SQL 4- Requêtes Application – SELECT sur plusieurs tables : SELECT nom, heure FROM animal, repas; Résultat ?
Le langage SQL 4- Requêtes Application – SELECT sur plusieurs tables : SELECT nom, heure FROM animal, repas; Résultat ? UN PRODUIT CARTESIEN Sans indication, le SGBD associe chacune des occurrences de chacune des tables.
Le langage SQL 4- Requêtes SELECT : la clause WHERE Jointures : la clause WHERE permet de gérer les relations entre les tables par l'introduction de jointures. 2 fonctions essentielles Application : SELECT nom, heure FROM animal A, repas R WHERE A.id = R.id_animal;
Le langage SQL 4- Requêtes SELECT : la clause WHERE Jointures : la clause WHERE permet de gérer les relations entre les tables par l'introduction de jointures. 2 fonctions essentielles Remarque : Il est d'usage de « renommer » les tables par leurs initiales ou leurs premières lettres et de spécifier l'association table.colonne dans la clause WHERE, afin d'éviter les rejets par le SGBD des ambiguïtés (nom de colonne commun à 2 tables)
Le langage SQL 4- Requêtes TP SQL 1 Effectuer les requêtes suivantes : 1- Liste des animaux nés au zoo. 2- Liste des noms des animaux et leur ordre. 3- Liste des noms des animaux et leur espèce appartenant à l'ordre des félins. 4- Liste des ours venant d'Europe.