Les systèmes de gestion de bases de données

Signaler

Nous présentons ici les généralités sur les SGBD et les outils qui sont employés pour les mettre en œuvre.

I. Les systèmes de gestion de bases de données

Un système de gestion de bases de données (SGBD, DBMS en anglais) regroupe des outils logiciels permettant de gérer, manipuler, stocker et sécuriser des informations organisées dans une base de données.

Sous l’impulsion d’informaticiens comme Charles Bachman, des SGBD sont mis au point avant même l’apparition du modèle relationnel de E. F. Codd en 1970. La plupart suivent ce modèle (MySQL, PostgreSQL, MariaDB…) mais il existe des alternatives (de type NoSQL – Not Only SQL – comme MongoDB, Cassandra…).

La gestion d’une base de données (BDD) est complexe du fait de sa taille, du nombre de ses utilisateurs, de la nécessité d’assurer la cohérence et la sécurité des informations.

Un SGBD doit être indépendant des BDD qu’il gère.

II. SQL

Le langage le plus communément utilisé pour dialoguer (effectuer des requêtes) avec le SGBD est le SQL. C’est celui que nous allons utiliser pour créer des tables, ajouter, supprimer, mettre à jour des données. Il a été créé en 1979 et normalisé en 1986. Les requêtes s’apparentent le plus possible à des phrases en anglais. Il est déclaratif. Nous l’étudierons plus avant dans les fiches suivantes.

Mot-clé

Structured Query Language : langage de requête structurée.

III. SQLite

La plupart des SGBD fonctionnent sur des machines distantes selon le modèle client-serveur bien adapté à un langage de requêtes. SQLite, comme son nom l’indique, est un SGBD qui a un fonctionnement plus simple et s’apparente à une bibliothèque logicielle (écrite en langage C) qui est directement intégrée à l’application qui l’utilise. Une base de données est entièrement représentée dans un fichier. Cela peut présenter des inconvénients pour de gros systèmes mais suffira pour notre découverte.

SQLite est sous licence publique, ce qui en fait un outil de choix pour l’éducation, et il est largement utilisé (plus de 1 000 milliards de bases de données SQLite en activité), notamment par Mozilla, Google, Apple…

SQLite est disponible sur tous les systèmes d’exploitation. Il existe une bibliothèque Python, sqlite3, qui permet de gérer la BDD à partir de commandes écrites en Python.

À noter

Des instructions d’installation se trouvent sur cette page : https://www.tutorialspoint.com/sqlite/sqlite_installation.htm.

IV. En pratique

On travaille via le terminal Unix en lançant $ sqlite3 ou C:\>sqlite3 sous Windows. Sqlite3 est l’interface en ligne de commande associée à SQLite. On peut commencer par créer un fichier d’extension .sql qui contiendra les instructions pour créer les tables.

On peut aussi travailler avec Python et sa bibliothèque qui s’appelle aussi sqlite3 ou en utilisant le framework Bottle.

On peut installer l’outil graphique SQLiteBrowser disponible au téléchargement pour tout système d’exploitation (https://sqlitebrowser.org/dl/). Après avoir lancé SQLiteBrowser, on ouvre une base de données existante ou on crée une nouvelle base. Apparaît alors un outil graphique permettant de créer des tables de manière assez simple.

351494a7-72d3-4a16-8e61-2b9b88466e08