Fondements de la base de données relationnelle

Structure d’une base de données relationnelle

TABLE

Toute information dans une base de données relationnelle se présente sous forme d’une table (comme un chiffrier).

Celle-ci est une collection de colonnes (sa structure) et de lignes (son contenu). Chacune des tables représente un type d’objet ou de concept spécifique. Par exemple, la table des produits.

LIGNE

Les lignes représentent chacune des occurrences (les objets décrits) d’une table.

Par exemple, une ligne spécifique représente le produit #2743.

COLONNE

Les colonnes représentent les caractéristiques qui décrivent les objets.

Par exemple, la couleur est une des caractéristiques des produits ; le produit #2743 est de couleur noir.

RelationalDB_table

Définition des colonnes

La définition d’une table passe par la définition de ses colonnes. Chaque colonne est définie par deux caractéristiques:

  • son nom
  • son domaine de valeurs

Dans la théorie relationnelle, un domaine est ni plus ni moins qu’un ensemble de valeurs.

Le domaine d’une colonne est donc l’ensemble des valeurs possibles que peut prendre une colonne.

Le strict minimum requis pour représenter ce domaine, et donc pour créer une colonne dans une table, est le type de données (et sa longueur lorsque le type choisi nécessite la définition d’une taille maximale).

Les types de données

Chaque colonne doit donc être caractérisée par un type de données spécifique.

Il existe principalement quatre grandes familles de types de données: alphanumérique, numérique, date et binaire.

  • Les types alphanumériques servent à conserver du texte et des caractères. Les principaux types de données de ce groupe sont CHAR(x) et VARCHAR(x), où x est le nombre maximum de caractères que permet la colonne.
  • Les types numériques servent à conserver des données numériques, i.e. destinées à être utilisées pour des calculs. Les numériques constituent une très grande famille, elle-même divisée en sous-familles. On peut utiliser des nombres entiers, comme SMALLINT et INTEGER, ou des nombres décimaux avec NUMERIC(x,y), où x est le nombre total de positions numériques et y est le nombre de décimales. La grande différence entre ces divers types est l’espace physique réel occupé par la valeur dans la table. Dans le cas spécifique de SQL Server, le type de données INTEGER se nomme en réalité INT.
  • Les types dates sont utilisés pour conserver des dates avec ou sans heures, tout en permettant leur utilisation pour des calculs. Les principaux types de données de ce groupe sont DATE et DATETIME. Dans le cas spécifique de SQL Server, le type DATE n’existe pas.
  • Les types binaires sont utilisés pour conserver des données dont la forme n’est pas connue du SGBD, et qui nécessitent alors d’autres applications pour voir à leur interprétation (comme des images ou du son, par exemple). On fait souvent référence au terme « BLOB » pour désigner ces types de données.

Bien que le standard SQL reconnaisse les types de données énumérés ci-dessus, leur application exacte peut varier selon le SGBD choisi.

Consultez la documentation en ligne de SQL Server pour connaître tous les types de données que celui-ci peut offrir.

Le terme NULL

Toutes les colonnes d’une ligne ne possèdent pas nécessairement une valeur. Elles sont alors dites « nulles ».

Par définition, le terme NULL n’est pas une valeur. Ce n’est pas 0 (zéro), ce n’est pas ‘ ‘ (espace blanc) et ni ‘’ (chaîne vide).

Une colonne nulle n’a donc pas de valeur et ne peut jamais faire l’objet d’une comparaison avec un opérateur (=, <, >, etc.).

Une condition avec une valeur NULL est toujours évaluée à FAUX1 (i.e. un NULL n’est jamais égal à un NULL, et un NULL n’est jamais différent de NULL ! ).

Propriétés des tables

Pour que des tables soient définies en respectant la théorie relationnelle, elles doivent respecter cinq propriétés:

  • toutes les données au sein d’une même colonne sont homogènes;
  • chaque colonne représente un élément de données simple;
  • toutes les lignes sont distinctes;
  • l’ordre des lignes est sans importance;
  • l’ordre des colonnes est sans importance.

Les clés

Un élément important de la structure des bases de données sont les clés. On reconnaît trois sortes de clés.

Les clés primaires

La clé primaire est la valeur qui identifie de façon unique chacune des lignes contenues dans une table.

La clé primaire est généralement composée d’une seule colonne, mais peut, à l’occasion, être composée de plusieurs colonnes.

Les clés alternatives

Le concept de clé alternative est très similaire à celui de la clé primaire. Une clé alternative est une valeur qui identifie de façon unique chacune des lignes contenues dans une table, mais qui n’a pas été choisie comme la clé primaire de la table.

Par exemple, le numéro d’assurance sociale dans un dossier étudiant est une clé alternative, dans la mesure où la clé primaire du dossier est un autre élément (le matricule, par exemple).

Les clés lointaines

Une colonne, ou une combinaison de colonnes, est nommée clé lointaine dans une table lorsqu’elle est clé primaire dans une autre table.

La relation que l’on peut généralement établir entre deux tables passe par une clé primaire et une clé lointaine.

Print Friendly, PDF & Email

Laisser un commentaire