高級套件IBM Bob i 高級套件

斜線命令

使用 IBM i 特定斜線命令,重複使用預先定義的提示來自動化重複性任務。

IBM Bob Premium Package for i 以一組 IBM i 特定斜線命令擴展 Bob 的內建斜線命令。關於斜線命令的一般介紹及內建命令說明,請參閱 Slash Commands

在聊天中輸入 / 即可查看所有可用命令,包括此處說明的 IBM i 特定命令。

/erd

/erd 命令指示 Bob 為已連線 IBM i 上的一組資料庫資料表產生 Mermaid 風格的實體關係圖(ERD)。

屬性
命令/erd
引數提示[schema.table or library/file]
可用於IBM i Developer、IBM i Database
需要有效的 IBM i 連線

執行步驟

Bob 依照以下步驟執行:

根據您提供的引數決定範圍,若未提供引數則詢問要分析哪個綱要/程式庫。

查詢 QSYS2.SYSTABLESQSYS2.SYSCOLUMNSQSYS2.SYSCSTQSYS2.SYSREFCST,以收集資料表結構與關聯。

建置並渲染 Mermaid 風格的實體關係圖(ERD),包含精確的 Db2 for i 資料類型、欄位標記(PK、FK、UQ)及基數標記。

使用範例

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

/review_SQL

/review_SQL 命令指示 Bob 使用一組最佳實務對 SQL 陳述式進行全面審閱。可接受獨立的 SQL 陳述式,或引用包含一條或多條 SQL 陳述式的原始碼。

屬性
命令/review_SQL
引數提示[SQL statement or source code path]
可用於IBM i Database
需要有效的 IBM i 連線

執行步驟

Bob 依照以下步驟執行:

從您提供的引數解析 SQL 陳述式,若未提供則請求輸入。

依據完整的審閱清單評估陳述式:

  • 正確性與簡化:正確性疑慮、多餘謂詞、脆弱構造、巢狀子查詢、重複運算式及不必要的聯結
  • 可讀性與可維護性:格式、別名及複雜邏輯的注解
  • 限定與命名:資料表關聯名稱及一般識別碼與分隔識別碼的使用
  • 最佳實務:內建函數、CTE 及參數標記的使用
  • 安全性:SQL 注入風險、過度權限、列權限及欄位遮罩
  • 從 SQL 文字分析效能:非 sargable 謂詞、謂詞中不必要的純量函數及可避免的轉型
  • 陳述式類型特定指引:DDL、DML、嵌入式 SQL 及動態 SQL 的具體說明
  • 診斷與驗證指引:Visual Explain、Plan Cache 及索引建議指引
  • 可重用邏輯:UDF、預存程序及 SQL INCLUDE 候選項
  • 交易隔離:明確的 WITH 子句及隔離等級一致性

以下列結構回傳結果:

  • 摘要:簡短的整體評估
  • 已確認發現:依類別、說明及建議改善方式列出的編號問題清單
  • 條件式建議:依賴中繼資料、工作負載或執行期證據的建議編號清單
  • 修訂後的 SQL:僅在能夠確信保留語意時提供修訂後的 SQL 陳述式;否則提供附說明的示意性改寫,並說明哪些部分仍為條件式
  • 變更說明:每項建議變更的簡潔說明

使用範例

/review
/review_SQL SELECT * FROM ORDERS WHERE CUSTID = '12345'
/review_SQL mylib/mysrc(mycode)
/review_SQL /home/scottf/RPGsrc/toystore.rpglesrc
這個主題如何?