On va maintenant se focaliser sur l'implantation de l'algèbre relationnelle dans un langage pratique nommé SQL. Vous allez voir qu'on va sacrément se faciliter la tâche.
Pour utiliser des bases de données en informatique, on va faire du SQL.
Ca veut dire Structured Query Language.
Ce langage peut être vu comme une surcouche syntaxique de l'algèbre relationnelle avec des différences notoires comme par exemple la gestion de multi-ensembles au lieu des ensembles comme en algèbre (c'est ce que je vous ai dit juste avant).
Alors SQL, c'est un langage, mais rappelez-vous, on utilise des SGBD, et chaque SGBD est spécifique, et a ses propres extensions. Il faut donc le prendre en compte. Mais une fois de plus, rien d'insumontable ici, rassurez-vous. Le standard actuel est le SQL2. Il a été adopté en 1992. Ca fait un paquet de temps et c'est toujours valable, preuve que c'est quand même robuste!
Définition d'une base de données
Dans ce cours, on va travailler en utilisant le SGBD mysql. Il en existe plein d'autres, PostgreSQL, Oracle, MSSql, Access .
Donc ce que je vais vous passer derrière sont des commandes mysql. Si vous voulez par exemple les commandes postgresql, il suffit de me le demander.
Connexion à un serveur de bases de données
mysql -u User -h Serveur -pMotDePasse nomBase
mysql> use nomBase; # permet de choisir une base
mysql> describe ma_table; # permet de connaître les attributs d'une table
mysql> create database nomBase; # permet de créer une base
mysql> show tables; # permet de voir la liste des tables
mysql> create table ma_table(...)# Création d'une table
mysql> alter table ma_table ...# Mise à jour d'une table
mysql> drop table ma_table;# Suppression d'une table
mysql> insert into ma_table ...;# Insertion d'une ligne
mysql> update ma_table ...;# Modification d'une ligne
mysql> delete from ma_table ...;# Suppression d'une ligne
Je vous rappelle le principe en SQL : Table = relation + schéma de relation. Autre principe de base, qui est le même que dans de très nombreux autres langages, chaque requête se termie obligatoirement par un ;.