février
2013
Ceci est un avant goût pour ceux qui découvrent les bases de données. Il suppose que vous connaissez le concept de langage informatique et son objectif est de vous permettre seulement de noter les différents points à développer; de ce fait aucun lien ne vous sera donné.
Les SGBD (Système de Gestion de Bases de Données) Oracle, SQL Server, PostgreSQL, MySQL, ACCESS… sont pilotés uniquement par le langage SQL (Structured Query Language).
Présentons d’abord le contenu d’une base de données.
Une base de données contient des
- tables qui contiennent les données
- index qui contiennent des copies de certaines données avec leurs adresses logiques. Ils sont utilisés pour accélérer l’accès aux données.
- contraintes pour garantir l’intégrité et la cohérence des données (valeur, forme, interdépendance)
- vues qui sont des requêtes de sélections enregistrées
- fonctions et procédures qui sont des commandes en SQL procédurale, pour effectuer des taches répétitives et lourdes directement sur le serveur
- déclencheurs qui définissent des actions à exécuter lors des opérations (ajout, suppression ou modification) sur les données de table ou vue
- utilisateurs et groupes avec leurs droits d’accès.
Pour chaque accès externe à chacun de ces éléments le SGBD reçoit une commande SQL qu’il exécute à travers des modules en langage évolué (généralement en C++): SQL est donc passé en paramètre à un autre langage qui accède physiquement à la base de données.
Présentons SQL.
Une base de données standard contient : la structure de ses données, les données elles même et les utilisateurs avec leurs droits d’accès.
SQL propose alors pour ces trois parties essentielles, trois groupes de commandes :
- LDD : langage de définition de données qui définit les structures (nom et type) des données est des contraintes de vérification des valeurs des données.
- LMD : langage de manipulation de données. Ajout, modification, suppression et recherche de données.
- LCD : langage de contrôle de données. Définition des utilisateurs et leurs droits (privilèges) d’accès aux données ou structures.
A ces trois groupes, s’ajoute un quatrième assurant un rôle très important des SGBD: assurer la cohérence des données suite à une transaction (un ou plusieurs opérations regroupées en une entité) réussit ou échoué.
SQL de par sa nature, est un langage ensembliste c’est-à-dire qu’il travaille sur un ensemble de données à la fois (donnée tabulaire). De ce fait il manque des éléments de boucle, condition, traitement d’erreurs…
Pour pallier à cette lacune, les Systèmes de types clients/serveur* se sont enrichit pour faire du procédural on parle alors de SQL procédural. Pour les systèmes de type fichier* on a recours aux langages du programme utilisé tel VBA pour ACCESS.
SGBD clients/serveur (un seul SGBD installé auquel des programmes accèdent via le réseau)
SGBD fichier (chaque programme est couplé à un SGBD local et l’ensemble accèdent à la base de données sur un partage réseau)
1 Commentaire + Ajouter un commentaire
Commentaires récents
- Personnaliser la connexion d’un projet adp ACCESS dans
- [Bases de données] présentation de SQL dans
- [ACCESS] Numérotation automatique de courriers par an (janvier à décembre) dans
- [ACCESS] Numérotation automatique de courriers par an (janvier à décembre) dans
- [ACCESS] Numérotation automatique de courriers par an (janvier à décembre) dans
[…] […]