Packages premiumIBM Bob Premium Package pour i

Commandes slash

Utilise des commandes slash spécifiques à IBM i pour réutiliser des prompts prédéfinis qui automatisent les tâches répétitives.

IBM Bob Premium Package for i enrichit les commandes slash intégrées de Bob avec un ensemble de commandes slash spécifiques à IBM i. Pour une introduction générale au fonctionnement des commandes slash et à leurs variantes intégrées, consulte Slash Commands.

Tape / dans le chat pour voir toutes les commandes disponibles, y compris les commandes IBM i décrites ici.

/erd

La commande /erd demande à Bob de générer un diagramme entité-relation (ERD) de style Mermaid pour un ensemble de tables de base de données sur l'IBM i connecté.

PropriétéValeur
Commande/erd
Indice d'argument[schema.table ou library/file]
Disponible dansIBM i Developer, IBM i Database
NécessiteUne connexion IBM i active

Ce qu'elle fait

Bob suit ces étapes :

Déterminer la portée à partir de l'argument fourni ou demander quel schéma/bibliothèque analyser si aucun argument n'est donné.

Interroger QSYS2.SYSTABLES, QSYS2.SYSCOLUMNS, QSYS2.SYSCST et QSYS2.SYSREFCST pour récupérer la structure des tables et leurs relations.

Construire et rendre un diagramme entité-relation (ERD) de style Mermaid avec les types de données Db2 for i exacts, les marqueurs de colonne (PK, FK, UQ) et les notations de cardinalité.

Exemple d'utilisation

/erd
/erd MYLIB
/erd MYAPP.ORDERS
/erd MYPROJ/CUSTOMER

/review_SQL

La commande /review_SQL demande à Bob d'effectuer une révision complète d'une instruction SQL à partir d'un ensemble de bonnes pratiques. Elle peut accepter une instruction SQL autonome ou faire référence à du code source contenant une ou plusieurs instructions SQL.

PropriétéValeur
Commande/review_SQL
Indice d'argument[SQL statement or source code path]
Disponible dansIBM i Database
NécessiteUne connexion IBM i active

Ce qu'elle fait

Bob suit ces étapes :

Analyser l'instruction SQL à partir de l'argument fourni ou en demander une si aucun argument n'est donné.

Évaluer l'instruction par rapport à une checklist de révision complète :

  • Correction et simplification : problèmes de correction, prédicats redondants, constructions fragiles, sous-requêtes imbriquées, expressions répétées et jointures inutiles
  • Lisibilité et maintenabilité : formatage, alias et commentaires sur la logique complexe
  • Qualification et nommage : noms de corrélation de table et identifiants ordinaires vs délimités
  • Bonnes pratiques : utilisation des fonctions intégrées, des CTE et des marqueurs de paramètre
  • Sécurité : risques d'injection SQL, privilège excessif, permissions de ligne et masques de colonne
  • Performances depuis le texte SQL : prédicats non sargables, fonctions scalaires inutiles dans les prédicats et casts évitables
  • Conseils spécifiques au type d'instruction : spécificités pour DDL, DML, SQL embarqué et SQL dynamique
  • Conseils de diagnostic et de vérification : pointeurs vers Visual Explain, le plan cache et les conseils d'index
  • Logique réutilisable : candidats UDF, procédures stockées et INCLUDE SQL
  • Isolation des transactions : clauses WITH explicites et cohérence du niveau d'isolation

Retourner les résultats structurés comme suit :

  • Résumé : évaluation globale succincte
  • Résultats confirmés : liste numérotée des problèmes, chacun avec une catégorie, une explication et une amélioration suggérée
  • Recommandations conditionnelles : liste numérotée de suggestions qui dépendent des métadonnées, de la charge de travail ou d'éléments d'exécution
  • SQL révisé : une instruction SQL révisée uniquement lorsque la sémantique peut être préservée avec certitude ; sinon une réécriture illustrative avec une explication de ce qui reste conditionnel
  • Explication des changements : description concise de chaque changement suggéré

Exemple d'utilisation

/review_SQL
/review_SQL SELECT * FROM ORDERS WHERE CUSTID = '12345'
/review_SQL mylib/mysrc(mycode)
/review_SQL /home/scottf/RPGsrc/toystore.rpglesrc
Comment trouvez-vous ce sujet ?