IV.5.3. Implémentation de la base de données par
l'approche Graphe
Nous avons pu implémenter en graphe en mode console
notre base de données. Pour l'implémenter, il s'agit
d'écrire des requêtes NoSQL du langage Cypher. Ainsi, le langage
Cypher est un standard des bases des données orientées-graphe
utilisé dans le SGBD orientées-graphe qu'on appelle Neo4j.
Les différentes requêtes du langage Cypher se
tapent dans la zone de fermeture qui se présente de la manière
suivante :
C'est dans la zone ci-haut que toutes les requêtes
Cypher s'écrivent. Chaque requête se trouve sur une ligne qui se
nomme automatiquement dès que nous passons d'une ligne à une
autre.
Après validation, on aura la feuille des
résultats suivants :
Le graphe de la base de données dans la console de
Neo4j se présente alors de la manière suivante:
Chaque type de noeud porte une couleur différente des
autres.
1. Pour les noeuds de type Entreprise, la couleur est
violette ;
2. Pour les noeuds de type Dirigeant, la couleur est grise
foncée ;
3. Pour les noeuds de type Personne, la couleur est
rouge ;
4. Pour les noeuds de type Service, la couleur est
grise-claire.
Les codes-sources de la création de graphe sont
alors :
CREATE (d:Dirigerant{Id_Dirigerant:"1001", Prenom:"Coen",
Nom:"Fundatela", Sexe:"M",Qualite:"DG"})
CREATE (e1:Entreprise{Id_Entreprise:"10001",
Denomination:"BCorp", Date_Creation:"04/09/2015",
Siege_Sociale:"Kinshasa/Gombe", Status_Juridique:"SARL"})
CREATE (e2:Entreprise{Id_Entreprise:"10002",
Denomination:"Vodacom", Date_Creation:"01/06/1994",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SPRL"})
CREATE (e3:Entreprise{Id_Entreprise:"10003",
Denomination:"Sonas", Date_Creation:"01/02/1987",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SA"})
CREATE (e4:Entreprise{Id_Entreprise:"10004",
Denomination:"Shibagu Techology", Date_Creation:"11/11/2011",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SARL"})
CREATE (e5:Entreprise{Id_Entreprise:"10005", Denomination:"BCC",
Date_Creation:"02/12/1956",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SA"})
CREATE (e6:Entreprise{Id_Entreprise:"10006", Denomination:"SNEL",
Date_Creation:"02/12/1956",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SA"})
CREATE (e7:Entreprise{Id_Entreprise:"10007", Denomination:"OCC",
Date_Creation:"30/11/1973",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SA"})
CREATE (e8:Entreprise{Id_Entreprise:"10008", Denomination:"DGDA",
Date_Creation:"28/12/1976",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SA"})
CREATE (e9:Entreprise{Id_Entreprise:"10009", Denomination:"RTNC",
Date_Creation:"05/03/1956",
Siege_Sociale:"Kinshasa/Lingwala",Status_Juridique:"SA"})
CREATE (e10:Entreprise{Id_Entreprise:"10010", Denomination:"RTNC
2 Développement", Date_Creation:"15/06/1989",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SA"})
CREATE (e11:Entreprise{Id_Entreprise:"10011", Denomination:"RTNC
3 Institutions", Date_Creation:"15/06/2009",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SA"})
CREATE (e12:Entreprise{Id_Entreprise:"10012",
Denomination:"FlechTech", Date_Creation:"28/09/2010",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SARL"})
CREATE (e13:Entreprise{Id_Entreprise:"10013", Denomination:"Paris
Foot", Date_Creation:"25/08/2008",
Siege_Sociale:"Kinshasa/Gombe",Status_Juridique:"SARL"})
CREATE (s1:Service{Id_Service:"2001",
Intitule_Service:"Electricité"})
CREATE (s2:Service{Id_Service:"2002", Intitule_Service:"TIC"})
CREATE (s3:Service{Id_Service:"2003", Intitule_Service:"Radio et
Télévision"})
CREATE (s4:Service{Id_Service:"2004",
Intitule_Service:"Mécanique"})
CREATE (s5:Service{Id_Service:"2005",
Intitule_Service:"Assurance"})
CREATE (s6:Service{Id_Service:"2006",
Intitule_Service:"Réseaux des Télécommunications"})
CREATE (s7:Service{Id_Service:"2007",
Intitule_Service:"Contrôle"})
CREATE (s8:Service{Id_Service:"2008",
Intitule_Service:"Distribution d'Eau"})
CREATE (s9:Service{Id_Service:"2009",
Intitule_Service:"Impôts, douanes & assises"})
CREATE (s10:Service{Id_Service:"2010",
Intitule_Service:"Banque"})
CREATE (s11:Service{Id_Service:"2011",
Intitule_Service:"Industries"})
CREATE (s12:Service{Id_Service:"2012",
Intitule_Service:"Aviation"})
CREATE (s13:Service{Id_Service:"2012",
Intitule_Service:"Lotterie"})
CREATE (d)-[:Diriger{Anciennete:"5mois"}]->(e)
CREATE (p1:Personne{Id_Personne:"1002", Prenom:"Gradi",
Nom:"Kamingu", Sexe:"M",Qualite:"DGA"})
CREATE (p2:Personne{Id_Personne:"1003", Prenom:"Patrick",
Nom:"Shungu", Sexe:"M",Qualite:"Directeur Financier"})
CREATE (p3:Personne{Id_Personne:"1004", Prenom:"Bel-Ange",
Nom:"Kalonji", Sexe:"F",Qualite:"Conseiller Juridique"})
CREATE (p4:Personne{Id_Personne:"A250", Prenom:"Glodi",
Nom:"Kamingu", Sexe:"M",Qualite:"Conseiller Statistiques"})
CREATE (p5:Personne{Id_Personne:"A2880", Prenom:"Jean-Paul",
Nom:"Tsasa", Sexe:"M",Qualite:"Rédacteur en Chef"})
CREATE (p6:Personne{Id_Personne:"A5862", Prenom:"Trésor",
Nom:"Badibanga", Sexe:"M",Qualite:"Caméraman"})
CREATE (p7:Personne{Id_Personne:"BG586", Prenom:"Aninya",
Nom:"NGe", Sexe:"F",Qualite:"Chimiste"})
CREATE (p8:Personne{Id_Personne:"1008", Prenom:"Grace",
Nom:"Isolo", Sexe:"F",Qualite:"Secrétaire de Direction"})
CREATE (p9:Personne{Id_Personne:"A2520", Prenom:"Paul",
Nom:"Kitenge", Sexe:"M",Qualite:"Analyste-Programmeur"})
CREATE (p10:Personne{Id_Personne:"A2580", Prenom:"Moïse",
Nom:"Mbikayi", Sexe:"M",Qualite:"Administrateur Réseaux"})
CREATE (p11:Personne{Id_Personne:"2002", Prenom:"Onyx",
Nom:"Mpoy", Sexe:"M",Qualite:"Opérateur de saisie"})
CREATE (p12:Personne{Id_Personne:"2003", Prenom:"Josée",
Nom:"Jos", Sexe:"F",Qualite:"Opérateur de Saisie"})
CREATE (p13:Personne{Id_Personne:"2004", Prenom:"Levieux",
Nom:"Makizeyika", Sexe:"M",Qualite:"Conseiller stratégique"})
CREATE (p14:Personne{Id_Personne:"B250", Prenom:"Glodia",
Nom:"Sassou", Sexe:"F",Qualite:"Conseiller Statistiques"})
CREATE (p15:Personne{Id_Personne:"B2880", Prenom:"John",
Nom:"Loledi", Sexe:"M",Qualite:"Marketeur"})
CREATE (p16:Personne{Id_Personne:"B5862", Prenom:"Pupa",
Nom:"Balak'opandje", Sexe:"M",Qualite:"Réporteur"})
CREATE (p17:Personne{Id_Personne:"CG586", Prenom:"Anne",
Nom:"Mumaka", Sexe:"F",Qualite:"Chimiste"})
CREATE (p18:Personne{Id_Personne:"2008", Prenom:"Rony",
Nom:"Bope", Sexe:"M",Qualite:"Statisticien"})
CREATE (p19:Personne{Id_Personne:"B2520", Prenom:"Gloria",
Nom:"Mbombo", Sexe:"F",Qualite:"Chimiste"})
CREATE (p20:Personne{Id_Personne:"B2580", Prenom:"Moïse",
Nom:"Kabamba", Sexe:"M",Qualite:"Administrateur Système"})
CREATE (p1)-[:Travailler{Anciennete:"5mois",
Type_Contrat:"Durée Indeterminée"}]->(e1)
CREATE (p2)-[:Travailler{Anciennete:"5mois",
Type_Contrat:"Durée Indeterminée"}]->(e1)
CREATE (p3)-[:Travailler{Anciennete:"5mois",
Type_Contrat:"Durée Indeterminée"}]->(e2)
CREATE (p4)-[:Travailler{Anciennete:"2ans",
Type_Contrat:"Durée Indeterminée"}]->(e3)
CREATE (p5)-[:Travailler{Anciennete:"15ans",
Type_Contrat:"Durée Indeterminée"}]->(e3)
CREATE (p6)-[:Travailler{Anciennete:"5mois",
Type_Contrat:"2ans"}]->(e9)
CREATE (p7)-[:Travailler{Anciennete:"2ans", Type_Contrat:"8ans
"}]->(e7)
CREATE (p8)-[:Travailler{Anciennete:"6ans",
Type_Contrat:"4ans"}]->(e6)
CREATE (p9)-[:Travailler{Anciennete:"20ans",
Type_Contrat:"4ans"}]->(e7)
CREATE (p10)-[:Travailler{Anciennete:"1an",
Type_Contrat:"4ans"}]->(e13)
CREATE (p11)-[:Travailler{Anciennete:"5mois",
Type_Contrat:"Durée Indeterminée"}]->(e3)
CREATE (p12)-[:Travailler{Anciennete:"8mois",
Type_Contrat:"Durée Indeterminée"}]->(e10)
CREATE (p13)-[:Travailler{Anciennete:"15ans",
Type_Contrat:"Durée Indeterminée"}]->(e3)
CREATE (p14)-[:Travailler{Anciennete:"5mois",
Type_Contrat:"2ans"}]->(e1)
CREATE (p15)-[:Travailler{Anciennete:"2ans", Type_Contrat:"8ans
"}]->(e2)
CREATE (p16)-[:Travailler{Anciennete:"6ans",
Type_Contrat:"4ans"}]->(e3)
CREATE (p17)-[:Travailler{Anciennete:"20ans",
Type_Contrat:"4ans"}]->(e7)
CREATE (p18)-[:Travailler{Anciennete:"1an",
Type_Contrat:"4ans"}]->(e13)
CREATE (p19)-[:Travailler{Anciennete:"5mois",
Type_Contrat:"Durée Indeterminée"}]->(e7)
CREATE (p20)-[:Travailler{Anciennete:"8mois",
Type_Contrat:"Durée Indeterminée"}]->(e13)
CREATE (d)-[:Diriger{Anciennete:"5mois"}]->(e1)
CREATE (e1)-[:Offrir]->(s1)
CREATE (e2)-[:Offrir]->(s6)
CREATE (e3)-[:Offrir]->(s5)
CREATE (e4)-[:Offrir]->(s2)
CREATE (e5)-[:Offrir]->(s10)
CREATE (e6)-[:Offrir]->(s1)
CREATE (e7)-[:Offrir]->(s7)
CREATE (e8)-[:Offrir]->(s9)
CREATE (e9)-[:Offrir]->(s3)
CREATE (e10)-[:Offrir]->(s3)
CREATE (e11)-[:Offrir]->(s3)
CREATE (e12)-[:Offrir]->(s2)
CREATE (e13)-[:Offrir]->(s13)
CREATE (e1)-[:Relation{Type_Relation:"Partenariat"}]->(e2)
CREATE (e1)-[:Relation{Type_Relation:"Partenariat"}]->(e5)
CREATE (e12)-[:Relation{Type_Relation:"Partenariat"}]->(e2)
CREATE (e1)-[:Relation{Type_Relation:"Partenariat"}]->(e4)
CREATE (e10)-[:Relation{Type_Relation:"Extension"}]->(e9)
CREATE (e11)-[:Relation{Type_Relation:"Extension"}]->(e9)
CREATE (e5)-[:Relation{Type_Relation:" Partenariat"}]->(e6)
CREATE (e5)-[:Relation{Type_Relation:"Partenariat"}]->(e7)
CREATE (e5)-[:Relation{Type_Relation:"Partenariat"}]->(e8)
CREATE (e5)-[:Relation{Type_Relation:"Partenariat"}]->(e9)
|