Travailler avec des modèles de données hiérarchiques

Requêtes hiérarchiques et récursives dans SQL Server

Jasmin Ludolf

Content Developer

Le modèle de données hiérarchique

Propriétés des modèles hiérarchiques :

  • Représentés sous forme d'arbre
  • Un élément racine unique
  • Chaque enfant a un parent unique

Une possible représentation des données hiérarchiques en arbre

Avantages :

  • Faciles à comprendre
  • Sélection rapide

Inconvénients :

  • Structure rigide
  • Modifications structurelles complexes
Requêtes hiérarchiques et récursives dans SQL Server

Exemple de modèle de données hiérarchique

Relation client‑facture‑article :

Un client peut avoir plusieurs factures et chaque facture peut avoir plusieurs articles

CREATE TABLE Customer (   
    ID INT NOT NULL);
CREATE TABLE Bill (   
    BillID INT NOT NULL,  
      CustomerID INT);
CREATE TABLE Article (   
    ArticleID INT NOT NULL,  
      BillID INT);

Représentation hiérarchique de la relation client‑facture‑article

Requêtes hiérarchiques et récursives dans SQL Server

Le modèle de données en réseau

Propriétés des modèles en réseau :

  • Similaires aux modèles hiérarchiques
  • Relations plusieurs‑à‑plusieurs
  • De nombreux chemins de recherche

Une possible représentation des données en réseau sous forme d'arbre

Avantages :

  • Pas de hiérarchie stricte
  • Multiples chemins de solution
  • Nombreux exemples concrets

Inconvénient :

  • Lisibilité réduite pour de grands modèles
Requêtes hiérarchiques et récursives dans SQL Server

Exemple de modèles de données en réseau

Relation client‑commande‑article :

Plusieurs clients peuvent avoir plusieurs commandes et chaque commande peut avoir plusieurs articles.

CREATE TABLE Customer (   
    ID INT NOT NULL);
CREATE TABLE Order (   
    OrderID INT NOT NULL,  
      CustomerID INT);
CREATE TABLE Article (   
    ArticleID INT NOT NULL,  
      OrderID INT);

Représentation en réseau de la relation client‑commande‑article

Requêtes hiérarchiques et récursives dans SQL Server

Passons à la pratique !

Requêtes hiérarchiques et récursives dans SQL Server

Preparing Video For Download...