Valeur de cette activité : 5 points
Compétence :
PEPS - Initiation aux requêtes SQL

A-Module 29 : Le langage SQL : 5 points - difficulté : 2

La langage SQL

Présentation

Le langage SQL permet de communiquer avec une base de données (Oracle, DB2, Sybase, Informix, Microsoft SQL Server, Microsoft Access,...)

Il permet de sélectionner (rechercher) certaine enregistrements selon certains critères, ajouter, supprimer et modifier le contenu de ces enregistrements.

Cette activité vous permettra de vous initier aux requêtes SQL simples de sélection (recherche) d'enregistrements.

Pour en connaître davantage, consultez le mini cours SQL

Description

Dans cette activité, vous aurez à :
1- Écrire des requêtes SQL afin de rehercher certains enregistrements dans une base de données
2- Valider ces requêtes
3- Inscrire ces requêtes dans votre page du portfolio.

La base de données que vous allez utiliser comporte 1 table nommée : "Customers"

La base de données que vous allez utiliser comporte 4 champs :
1- le champ nommé "CompanyName" qui contient le nom de la compagnie
2- le champ nommé "ContactName" qui contient le nom de la personne responsable de la compagnie
3-le champ nommé "Address" qui contient l'adresse de la compagnie
4- le champ nommé "City" qui contient le nom de la ville

Maintenant, un peu de théorie!
Lisez et comprenez bien les explications ci-dessous:

Exemple 1
Voici un exemple de requête simple :

SELECT * FROM Customers

Le mot "Select" est utilisé afin de sélectionner (rechercher) des enregistrements.
Le mot "*" est utilisé afin de rechercher tous les champs de la table.
Les mots "FROM Customers" spécifient la table de la base de données qui sera utilisée.

En français, cette requête se lit de la façon suivante :
Sélectionne tous les champs de tous enregistrements de la table Customers.

Exemple 2
Voici un exemple de requête simple utilisant un ordre de tri :

SELECT * FROM Customers order by City Asc

Les mots "Order by" sont utilisés afin de spécifier un tri.
Le mot "City" est utilisé afin d'indiquer que le tri devra s'effectuer sur le champ CITY.
Le mot "Asc" spécifie que le tri devra s'effectuer dans un ordre croissant (du mot anglais : ascending).
Le mot "Desc" pourrait être utilisé afin que le tri devra s'effectue dans un ordre décroissant (du mot anglais : descending).

En français, cette requête se lit de la façon suivante :
Sélectionne tous les champs de tous les enregistrements de la table Customers triées selon le champ City dans un ordre croissant.

Exemple 3
Voici un exemple de requête simple spécifiant certains champs à afficher :

SELECT CompanyName,ContactName FROM Customers

Les mots "CompanyName,ContactName" sont utilisés afin de spécifier les champs à afficher.

En français, cette requête se lit de la façon suivante :
MODULE Le langage SQL Sélectionne les champs CompanyName et ContactName de tous les enregistrements de la table Customers

Exemple 4
Voici un exemple de requête simple spécifiant d'effectuer une recherche selon certains critères :

SELECT * FROM Customers WHERE City='Berlin'

Le mot "Where" indique que la recherche devra s'effectuer selon certains critères.
Les mots "City='Berlin'" spécifie le critère de recherche, c'est à dire : recherche les enregistrements pour lesquelles la ville est Berlin.
Remarquez que l'apostrophe est utilisé avant et après le mot Berlin afin d'indiquer que ce texte est une "chaîne littérale"

En français, cette requête se lit de la façon suivante :
Sélectionne tous les champs de la table Customers dont les enregistrements contiennent le champ ville qui est Berlin.

Exemple 5
Voici d'autres façons d'indiquer des critères de recherche :
SELECT * FROM Customers WHERE City>'C'
(nom de ville est plus grand que C)

SELECT * FROM Customers WHERE LIKE'%Be%'
(nom de ville conteint Be)

Voir les sites :
- http://www.weboconcept.com/cours_list.php?doc=SQL&id_rubrique=3&id_cours=39 pour plus d'explications (langue française).
- http://www.w3schools.com/sql/sql_where.asp pour plus d'explications (langue anglaise).
- http://www.w3schools.com/SQL/trysql.asp?filename=trysql_select_all
  1. Ajoutez une page à votre portfolio en affichant l'assistant HTML ainsi que la directive 5824
  2. Sélectionnez la section : Module 29 : Sql
  3. Inscrivez le titre : "Initiation aux requêtes SQL de recherche"
  4. Inscrivez dans votre page le titre de niveau 2 : "Initiation aux requêtes SQL de recherche"
  5. Pour chacune des requêtes suivantes, inscrivez dans votre page selon le modèle ci-dessous le numéro de la requête, l'objectif ainsi que la commande SQL associée à cette requête.

    Exemple :
    Requête 1 :
    OBJECTIF : Rechercher le nom des villes inscrites dans la table customers de la base de données
    SQL DE LA REQUÊTE : Select ...

  6. Affichez ce site : http://www.w3schools.com/SQL/trysql.asp?filename=trysql_select_all
  7. Requête 1 :
    Objectif : Rechercher le nom des villes inscrites dans la table customers de la base de données
    Procédures :
    a- dans le champ de type textarea de la page inscrivez votre requête.
    b- Cliquez le bouton "See the result" afin de valider votre requête
    c- Si votre requête vous affiche le résultat désiré,inscrivez :
    - le numéro de la requête (Requête 1)
    - l'obectif de la requête
    - et le texte de votre requête dans votre page du portfolio
    d- Si votre requête n'affiche pas le résultat désiré ou affiche une erreur, recommencez!
  8. Requête 2 :
    Objectif : Rechercher tous les champs des enregistrements de la table Suppliers , triées selon le nom du fournisseur (Suppliername) dans un ordre croissant.
  9. Requête 3 :
    Objectif : Rechercher tous les champs des enregistrements de la table des clients (customers) situés à London.
  10. Requête 4 :
    Objectif : Rechercher les champs SupplierName et ContactName de la table des fournisseurs (suppliers) pour les villes dont le nom est plus grand que N

  11. Visualisez votre page et apportez des modifications au besoin.
  12. Dans les prochaines activités, vous utiliserez d'autres types de commandes SQL :

    CREATE : pour créer des tables
    INSERT : pour insérer des enregistrements dans une table
    UPDATE : pour modifier des enregistrements dans une table
    DELETE : pour supprimer des enregistrements dans une table

    Il existe d'autres commandes SQL que vous aurez peut-être l'occasion d'utiliser!
    DROP : pour supprimer des tables dans une table
    ALTER : pour modifier la structure des tables

Autoévalutation de la qualité

  1. Est-ce que vos requêtes SQL ont été validées sur le site?
  2. Est-ce que vos requêtes (4) ont été inscrites dans votre page?
  3. Est-ce que vous avez inscrit l'objectif de la recherche pour chacune de vos requêtes?