Comandi slash
Usa i comandi slash specifici per IBM i per riutilizzare prompt predefiniti che automatizzano task ripetitivi.
IBM Bob Premium Package for i estende i comandi slash predefiniti di Bob con un insieme di comandi slash specifici per IBM i. Per un'introduzione generale su come funzionano i comandi slash e quali sono quelli predefiniti, consulta Comandi Slash.
Digita / nella chat per vedere tutti i comandi disponibili, inclusi quelli specifici per IBM i descritti qui.
/erd
Il comando /erd istruisce Bob a generare un Entity Relationship Diagram (ERD) in stile Mermaid per un insieme di tabelle del database sull'IBM i connesso.
| Proprietà | Valore |
|---|---|
| Comando | /erd |
| Suggerimento argomento | [schema.table or library/file] |
| Disponibile in | IBM i Developer, IBM i Database |
| Richiede | Connessione IBM i attiva |
Cosa fa
Bob segue questi passaggi:
Determina l'ambito dall'argomento fornito o chiede quale schema/libreria analizzare se non viene fornito alcun argomento.
Interroga QSYS2.SYSTABLES, QSYS2.SYSCOLUMNS, QSYS2.SYSCST e QSYS2.SYSREFCST per raccogliere la struttura delle tabelle e le relazioni.
Costruisce e visualizza un Entity Relationship Diagram (ERD) in stile Mermaid con tipi di dato Db2 for i accurati, indicatori di colonna (PK, FK, UQ) e notazioni di cardinalità.
Esempi d'uso
/erd
/erd MYLIB
/erd MYAPP.ORDERS
/erd MYPROJ/CUSTOMER/review_SQL
Il comando /review_SQL istruisce Bob a eseguire una revisione completa di un'istruzione SQL utilizzando una raccolta di best practice. Può accettare un'istruzione SQL autonoma o fare riferimento a codice sorgente che contiene una o più istruzioni SQL.
| Proprietà | Valore |
|---|---|
| Comando | /review_SQL |
| Suggerimento argomento | [SQL statement or source code path] |
| Disponibile in | IBM i Database |
| Richiede | Connessione IBM i attiva |
Cosa fa
Bob segue questi passaggi:
Analizza l'istruzione SQL dall'argomento fornito o ne chiede una se non viene fornito alcun argomento.
Valuta l'istruzione rispetto a una checklist di revisione completa:
- Correttezza e semplificazione: Problemi di correttezza, predicati ridondanti, costrutti fragili, subquery annidate, espressioni ripetute e join non necessari
- Leggibilità e manutenibilità: Formattazione, alias e commenti sulla logica complessa
- Qualifica e naming: Nomi di correlazione delle tabelle e identificatori ordinari versus delimitati
- Best practice: Uso di funzioni built-in, CTE e marcatori di parametro
- Sicurezza: Rischi di SQL injection, privilegi eccessivi, autorizzazioni sulle righe e maschere sulle colonne
- Prestazioni dal testo SQL: Predicati non sargable, funzioni scalari non necessarie nei predicati e cast evitabili
- Linee guida specifiche per tipo di istruzione: Dettagli per DDL, DML, SQL embedded e SQL dinamico
- Linee guida diagnostiche e di verifica: Puntatori a Visual Explain, plan cache e consigli sugli indici
- Logica riutilizzabile: UDF, stored procedure e candidati SQL
INCLUDE - Isolamento delle transazioni: Clausole
WITHesplicite e coerenza del livello di isolamento
Restituisce i risultati strutturati come:
- Riepilogo: Breve valutazione complessiva
- Risultati confermati: Elenco numerato di problemi, ciascuno con categoria, spiegazione e miglioramento suggerito
- Raccomandazioni condizionali: Elenco numerato di suggerimenti che dipendono da metadati, workload o evidenze runtime
- SQL rivisto: Un'istruzione SQL rivista solo quando la semantica può essere preservata con sicurezza; altrimenti una riscrittura illustrativa con spiegazione di ciò che rimane condizionale
- Spiegazione delle modifiche: Descrizione sintetica di ogni modifica suggerita
Esempi d'uso
/review_SQL
/review_SQL SELECT * FROM ORDERS WHERE CUSTID = '12345'
/review_SQL mylib/mysrc(mycode)
/review_SQL /home/scottf/RPGsrc/toystore.rpglesrc