<< Retour au sommaire

 

Introduction au langage SQL.

 

 

 

Le sommaire :

  1. Introduction.
  2. Connexion au serveur et à la base de données.
  3. La fonction mysql_query.

 

Introduction

 

Le langage SQL est un langage d’interrogations structuré qui permet de réaliser des opérations sur une base de données.

(STRUCTURED QUERY LANGUAGE)

 

A partir de plusieurs instructions clefs, vous pouvez ajouter, consulter, modifier, supprimer et créer des champs, des tables ou des données dans une base de données.

 

Les instructions clefs sont :

  1. insert, pour ajouter un nouvel enregistrement dans une table.
  2. select, pour consulter les données.
  3. update, pour modifier les données d’un enregistrement.
  4. delete, pour suprimer un enregistrement.
  5. create, pour créer une table.
  6. drop, pour supprimer une table.

 

Bien sûr, selon la commande utilisée et selon les critères à spécifier, la requête SQL peut être simple, mais peut également comporter un grand nombre de champs, d’opérateurs, de filtres, de conditions etc.…

 

Voici un exemple de syntaxe d’une requête SQL, ici, les parties de la requête qui sont optionnelles sont placées entre crochets :

 

CommandeSQL NomChamp1[,Autres champs séparés par des virgules]

from NomTable1[,Autres tables séparées par des virgules] [where Conditions] ;

 

Description de cette syntaxe :

 

CommandeSQL est le nom de la requête SQL, elle détermine le type d’opération à réaliser.

NomChamp1 est le champ que l’on désire récupéré, ou traiter selon le type d’opération, pour obtenir tous les champs de la table ou des tables spécifiées, NomChamp1 peut être remplacé par un astérisque, si vous spécifiez plusieurs champs, vous devez les séparer par le signe virgule.

From NomTable1 est le nom de la table depuis laquelle vous traitez les données. Si vous traitez les données de plusieurs tables, vous devez les spécifier en les séparant par une virgule.

 

Where condition, optionnellement, permet de spécifier une ou plusieurs conditions permettant de réaliser un filtre sur les données de la table.

 

Chaque partie de la requête SQL est appelée une close…

 

Voici un exemple de requête qui récupère toutes les données de la table Contacts.

Ici, il n’y aura pas la close « where », puisque aucune condition ne doit être remplie pour qu’un enregistrement soit affiché.

select * from Contacts;

 

Connexion au serveur et à la base de données

 

Pour exécuter des requêtes SQL sur une base de données, vous devez tout d’abord vous connecter sur le serveur contenant la base de données, puis, sur la base de données elle-même.

Pour se connecter sur le serveur, c’est la fonction mysql_connect.

La syntaxe :

$VariableConnexion = mysql_connect("NomDuServeur","Login","MotDePasse") or die("MessageErreur");

 

La description :

$VariableConnexion reçoit un identifiant de connexion qui va être utilisé pour ouvrir la base de données, si la connexion n’est pas établie, $VariableConnexion reçoit le message d’erreur passé en paramètre à or die.

Cette variable pourra aussi être traitée ultérieurement dans l’application…

NomDuServeur est le nom du serveur sur lequel vous désirez établir la connexion.

Pour vous connecter sur le serveur local d’EasyPHP, le nom du serveur est : localhost.

Login est le nom d’utilisateur qui vous donne accès au serveur.

Le login de connexion sur le serveur local d’EasyPHP est root.

MotDePasse est le mot de passe de connexion sur le serveur.

Dans le cas d’une connexion sur le serveur local d’EasyPHP, vous ne devez pas spécifier de mot de passe, vous ne placez donc rien entre les guillemets.

 

A titre d’exemple, voici la commande qui permet d’établir une connexion sur le serveur EasyPHP local :

<?php

// Connexion au serveur local

$Connect = mysql_connect("localhost","root","") or die("Impossible de se connecter au serveur local"); ?>     

Ici, nous avons utilisé la variable $Connect qui contiendra l’identifiant de connexion du serveur, ou, en cas d’échec de connexion, le message d’erreur.

Ensuite, vient la connexion à la base de données.

La fonction est mysql_select_db.

La syntaxe :

$VariableBDD = mysql_select_db("NomDeLaBaseDeDonnées",$VariableConnexion) or die("MessageErreur");

La description :

$VariableBDD est une variable qui reçoit le message d’erreur passé en paramètre à or die en cas d’échec d’ouverture de la base de données.

NomDeLaBaseDeDonnées est bien sûr le nom de la base de données à ouvrir…

$VariableConnexion est l’identifiant du serveur qui a été initialisé par la fonction mysql_connect.

 

L’idéal est de saisir le code de connexion au serveur et d’ouverture de la base de données dans un fichier PHP de fonctions.

Ainsi, lorsque vous souhaiterez travailler sur la base de données depuis un fichier PHP, il vous suffira de débuter le code du fichier par un include du fichier de fonction INC de connexion.

 

A titre d’exemple, voici le fichier connexion.inc qui établit une connexion sur le serveur local EasyPHP et qui ouvre la base de données GestionContacts :

 

<?php

// Connexion au serveur local

$connect = mysql_connect("localhost","root","") or die("Impossible de se connecter au serveur");

// Connexion à la base de données GestionContacts

$bdd = mysql_select_db("GestionContacts",$connect) or die("Impossible de se connecter à GestionContacts"); ?>

 

Bien sûr, lorsque vous désirez travailler sur la base de données GestionContacts, vous devrez débuter le code du fichier par :

<?php include("connexion.inc"); ?>

 

 


La fonction mysql_query

 

En PHP, pour qu’une requête SQL soit exécutée, vous devez la passer en paramètre à la fonction mysql_query.

 

La syntaxe :

$VariableTable = mysql_query("Requête");

La description :

$VariableTable est une variable qui reçoit la valeur 1 si la requête a réussie, et la valeur 0 dans le cas contraire.

Vous devez donc vérifier cette valeur afin d’orienter votre application sur le traitement approprié.

 

Requête est le paramètre de la fonction mysql_query, vous devez placer toute la requête entre guillemets.

Voici par exemple la requête pour récupérer toutes les données de la table « Contacts ». Ici, la variable utilisée est $TableContacts.

$TableContacts = mysql_query("select * from Contacts");

if ($TableContacts == 1)

{ echo “réussi !”; }

else

{ echo “Echoué !”; }

 

 

Philippe BOULANGER