Il est possible avec certains logiciels de voir le schéma relationnel de votre base de données sous forme de diagramme.
Exemple dans DBEAVER :


L’inconvénient est qu’il faut ouvrir une fenêtre supplémentaire.
Si vous travaillez dans VSCode, voici une petite astuce pour afficher un schéma de BDD.
Installation de l’extension
Tout d’abord il faut installer l’extension DBML Entity-Relationship Diagrams visualizer :
https://marketplace.visualstudio.com/items?itemName=bocovo.dbml-erd-visualizer
Si vous ne l’avez pas encore fait, installer l’extension Code For i
https://marketplace.visualstudio.com/items?itemName=HalcyonTechLtd.code-for-ibmi
Récupération et compilation
Ensuite télécharger et compiler le programme RPG / commande ci-dessous :
Compiler en remplaçant <BIBOBJ> et <BIBSRC> par votre bibliothèque :
CRTSQLRPGI OBJ(<BIBOBJ>/TODBML) SRCFILE(<BIBSRC>/QRPGLESRC) CLOSQLCSR(*ENDMOD) OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT) RPGPPOPT(*LVL2)
CRTCMD CMD(<BIBOBJ>/TODBML) PGM(<BIBOBJ>/TODBML) SRCFILE(<BIBSRC>/QCMDSRC) ALLOW(*ALL) CURLIB(*NOCHG) PRDLIB(*NOCHG)
Ajout de l’action Code for i
Ajouter l’action dans VSCode en remplaçant <BIBOBJ>, <BIBBDD>, <PATH> par votre bibliothèque, la bibliothèque de base de données et le chemin du fichier à générer :
?<BIBOBJ>/TODBML LIB(<BIBBDD>) PATH('<PATH>')
Paramètres de la commande:
LIB : Bibliothèque de la base de données
PATH : Le chemin du fichier dbml qui sera généré
Exemple :

ps : Vous pouvez faire une action de type « fichier » avec rafraichissement de filtre.
Lancer l’action


Visualisation du diagramme
Ouvrir le fichier et cliquer sur l’icone « show diagram » en haut à droite.


A vous de jouer !
Il est intéressant de constater que la richesse du rendu semble proportionnelle à la densité des relations dans la base… une coïncidence, sans doute 🙂