Base de données
Définition
Fichiers regroupant des données de façon structurée afin de faciliter le stockage, la recherche et la diffusion de l'information.
De par sa fonction, centralisation des données, les bases de données sont parfois associées à celle de réseau. On nomme système d'information l'ensemble des moyens mis en oeuvre pour partager l'information à travers un réseau.
Types de base de données
Dans notre métier, on retrouve fréquemment les bases de données suivantes :
- référence (qui regroupe des informations bibliographiques ou factuelles)
- texte intégral (qui regroupe des documents à caractère textuel)
- multimédia (qui regroupe documents sonores, visuels, etc.)Une base de données peut se trouver sur n'importe quel support : disque dur, cédérom, sur un serveur et accessible en réseau interne ou en ligne (à distance).
- texte intégral (qui regroupe des documents à caractère textuel)
- multimédia (qui regroupe documents sonores, visuels, etc.)Une base de données peut se trouver sur n'importe quel support : disque dur, cédérom, sur un serveur et accessible en réseau interne ou en ligne (à distance).
Principe d'organisation
Une base de données se compose minimalement d'un fichier structuré en champs qui possèdent des propriétés définissant les caractéristiques de son contenu : un champ de type texte (alphanumérique), numérique, monétaire, date, booléen, incrémental, etc.
Voici un tableau montrant les principales propriétés des champs.
Libellé | Exemple |
Type | A, N, D, M, I, B |
Taille | 10 caractères |
Format | 99999 ; AAAA/MM/JJ |
Valeur minimum | 1 ; - 65540 |
Valeur maximum | 100 ; 65540 |
Valeur par défaut | 52 ; date du jour |
Il y a toujours un champ primaire (clé) qui détermine l'ordre de tri des informations.
La clé primaire donne un accès rapide à l'information. Pour accéder aux informations par un autre champ, on procède de façon séquentielle (recherche plus lente) ou on crée une clé secondaire, c'est-à-dire un index qui reprendra les informations du champ et de la clé primaire.
Fichier primaire
| Fichier secondaire (index)
|
L'accès au fichier primaire est rapide par le numéro d'enregistrement (clé).
Pour un accès rapide par le nom, on passe par un index (fichier secondaire trié par nom).
Le cheminement est le suivant : on recherche une valeur dans l'index. Si on trouve, on récupère le numéro d'enregistrement et on recherche ce numéro dans le fichier primaire.
Type d'index
Un champ peut être indexer de diverses façons :
Le champ entier = tout le contenu du champ correspond à une valeur
Par mot = tous les mots du champ sont indexés (chaque mot équivaut à une valeur)
Multivalué = les valeurs sont identifiées dans le champ en fonction d'un séparateur de valeur (sous-champ).
Par mot = tous les mots du champ sont indexés (chaque mot équivaut à une valeur)
Multivalué = les valeurs sont identifiées dans le champ en fonction d'un séparateur de valeur (sous-champ).
Les langages documentaires ont développé d'autres notions telles que le retrait de l'article initiale et le dictionnaire des mots vides.
L'article initiale (l', le, la, les) est retiré avant l'indexation du champ.
Le dictionnaire des mots vides est utilisé lors de l'indexation par mots. On indexe tous les mots sauf les mots non significatif qui sont contenus dans le dictionnaire (le, la, les, un, et, ou, donc, ce, ça, il, etc.). En règle générale, on n'indexe pas les mots d'une seule lettre.
Les bases de données relationnelle
Une base de données relationnelle contient plusieurs fichiers (ou tables). Chaque table contient une partie de l'information reliée ensemble par des liens appelés relations. Cela permet d'éviter la redondance et facilite la maintenance des données.
Types de relation entre les tables
On pourrait avoir une relation de 1 à 1, c'est-à-dire que les informations sont du même niveau. (Cela n'est pas véritablement utile sauf dans certains cas où la première table serait trop importante.)
Table 1
| Table 2
|
La clé primaire est utilisé pour relier les deux tables entre elles. Ici, les informations de la table 1 et de la table 2 auraient pu être regroupées dans une seule table !
On peut avoir une relation de 1 à n, c'est-à-dire qu'un enregistrement de la table 1 peut être relié à plusieurs enregistrement de la table 2.
Table 1
| Table 2
|
La table 2 contient les numéros de téléphone des personnes citées dans la table 1. Comme on ne sait pas combien de numéros de téléphone un personne peut avoir, il est pratique de les ranger dans une autre table que la table principale.
On peut avoir une relation de n à 1, c'est-à-dire que plusieurs enregistrements de la table 1 ont la même référence dans la table 2.
Pour obtenir une relation de n à n, il faut créer une table intermédiaire. Imaginons un fichier bibliographique comportant une table de documents et une table d'autorités auteur.
Table document
| Table auteur
|
En admettant qu'un titre peut avoir plusieurs auteurs et qu'un auteur peut avoir écrit plusieurs documents, on ne peut pas rendre compte ici des deux relations en même temps. Il faut donc ajouter une table intermédiaire qui fera le lien entre les deux tables. Ainsi on établie une relation entre le champ Clé 1 des tables titre et intermédiare et une autre relation entre le champ Clé 2 des tables auteur et intermédiaire.
Table intermédiaire
|
On peut voir que le document 1 a été écrit par deux auteurs (1 et 2), que le titre 2 a été écrit par l'auteur 1, etc. Et inversement, l'auteur 1 a écrit les documents 1 et 3...
Les interfaces utilisateurs
Par ailleurs, un utilisateur a besoin de saisir de l'information, de la modifier, de la rechercher et de l'imprimer ou de la diffuser. Il faut donc une interface entre lui et la base de donner qui permette de réaliser ces fonctions. Ainsi nous avons des formulaires de saisie/modification, de requêtes pour saisir et rechercher l'information et des formats d'exportation et des états, pour diffuser et imprimer l'information.
Exemple d'un formulaire de saisie (dépouillement des périodiques pour cd-rap).
Pour rechercher l'information, les bases de données relationnelles utilisent le même langage de requête SQL (Standard Query Language). Voici un exemple de requête SQL :
SELECT * FROM Table_auteur WHERE Nom = "Argon"
Cette requête récupèrera toutes les enregistrements correspondant à "Argon" de la table auteur, soit les documents 1 et 3 (Un bel automne et Un beau printemps). C'est le lien entre les deux tables qui fait que les documents sont retrouvés.
Les opérateurs
Selon les types de base de données, on peut utiliser un certain nombre d'opérateur pour l'interrogation. On peut citer les opérateurs de comparaison, booléens, de proximité et la troncature.
Opérateurs de comparaison
Ces opérateurs permettent d'obtenir un point de comparaison dans une échelle de valeur. Ils sont souvent représentés par les symboles suivants : < > = !=, pour signifier plus petit que, plus grand que, égal à, différent de. Ces opérateurs souvent utilisés dans les champs numériques ou les dates (ex. valeur >1998).
Opérateurs booléens
Ces opérateurs sont utilisés pour combiner les termes à l'interrogation. Les opérateurs sont OU, ET et SAUF.
Maison ET Paris - signifie je veux tous les enregistrements qui contiennent le mot maison ainsi que le mot Paris.
Maison OU Cabane - signifie je veux tous les enregistrements qui contiennent soit le mot maison, soit le mot Cabane.
Maison SAUF Cabane - signifie je veux tous les enregistrements qui contiennent le mot Maison mais pas ceux qui contiennent le mot Cabane.
Troncature et masque
La troncature est souvent représenté par l'étoile (*) et le masque par un point d'interrogation (?).
Maison* - équivaut à tous les mots qui commencent par Maison (maison, maisons, maisonnette, etc.)
Maison? - équivaut à tous les mots qui commencent par Maison + une autre lettre (maison et maisons).
Les opérateurs de proximité
Ces opérateurs sont surtout utilisés dans la recherche plein texte, soit dans des champs texte long comme les résumés, soit dans des bases de données de texte intégral. L'opérateur prend diverse forme tel que "adj" pour adjacence.
Maison adj3 ville - signifie les enregistrements qui contiennent les mots maison et ville, mais séparés d'au plus de trois mots.