DBCHM -最簡單、最實用的數據庫文檔生成工具


🚩 項目介紹

DBCHM 是一款數據庫文檔生成工具! 該工具從最初支持chm文檔格式開始,通過開源,集思廣益,不斷改進,又陸續支持word、excel、pdf、html、xml、markdown等文檔格式的導出。

🎯 本項目力求做最簡單、最實用的數據庫文檔(字典)生成工具!

🍀支持的數據庫

  •  SqlServer
  •  MySQL
  •  Oracle
  •  PostgreSQL
  •  DB2
  •  SQLite

🥝主要功能

文檔的內容都包含什么?

  • 序號 | 列名 | 數據類型 | 長度 | 小數位數 | 主鍵 | 自增 | 允許空 | 默認值 | 列說明
  • 視圖 視圖具體內容
  • 存儲過程 存儲過程具體內容

🔹注:Oracle在v1.8.0.3-beta版本及以后暫不會查詢顯示自增數據。

支持哪些文檔格式的導出?

  •  chm
  •  word
  •  excel
  •  pdf
  •  html
  •  xml
  •  markdown

更新表列的注釋,有哪些方式?

  • 通過 工具-批注上載,選擇文件導入進行更新批注(注釋):
    •  pdm 由powerdesigner設計數據庫時產生。
    •  xml 由visual studio設置 實體類庫的項目屬性,勾選 XML文檔文件 后生成項目時產生。
    •  xml 由dbchm的 XML導出 而產生。
  • 列批注 在編輯前的選中狀態下,可以從 選定行開始 粘貼多行文本內容 對多個列注釋批量賦值。

🎉效果展示

1 數據庫連接配置示例

數據庫連接配置

2 數據庫連接管理

數據庫連接管理

3 表名模糊匹配

表名模糊搜索

4 執行批注更新

表批注更新

5 導出CHM文件

導出CHM文件

6 表結構信息

表結構信息

7 更多格式的效果,請下載體驗:wink:!!

查看chm效果:某微信開發框架表結構信息(示例).chm

📘發行歷史

​ ReleaseNote

💪貢獻者

⬇️下載使用

🍄 其他工具

  • htmlhelp,生成chm文件時,需提前安裝。
  • PDMToCHM,將PDM表結構文件導出到CHM文件。

🌱開發計划

  •  收集問題,修復完善基礎功能
  •  MJTop.Data 類庫完善
  •  測試數據生成器
  •  C#實體代碼生成器
  •  ...

📖常見問題

  • 連接不上,怎么辦?

    1. 連接數據庫界面填寫的連接信息真的正確無誤?
    2. 數據庫服務器防火牆/安全組限制?
    3. 用 Navicat Premium 連接數據庫服務器試試!
  • 連接數據庫時,點了 連接/測試 ,半天沒響應?

    可能是連接遠程數據庫網絡不好的原因,可以把連接超時設置的小一些。

  • dbchm可以連接上,但顯示不了數據怎么辦?

    • 導出文檔前,數據庫使用賬號要給予root級別的權限,非root級別賬號連接,可能會出現表數據顯示不全或數據查詢因權限不足,會查不出來數據
    • dbchm有Bug, 提Issue 或 進群里 反饋。
  • 表列的批注數據我想遷移,怎么辦?

    1. 使用 dbchm 的 XML導出,對當前數據庫的批注數據 就會導出一個xml文件。
    2. 數據連接, 切換至 目標數據庫連
    3. 再用批注上載 就可以選擇剛剛的xml文件,如果數據庫表結構相同,批注就會更新到目標數據庫服上。
  • 數據庫比較老,如 Sql Server 2000 ,怎么使用dbchm?

    1. 下載安裝 Navicat Premium
    2. 連接上老舊的數據庫服務器,將數據庫表結構腳本導出。
    3. 找一台高版本的數據庫服務器,新建一個臨時數據庫,將導出的腳本導入。
    4. 然后用dbchm連接高版本的數據庫服務器。
  • chm文件可以正常導出,但是文件名中文亂碼,打開顯示 無法訪問此頁

    這種情況,有一種可能是win系統的區域設置,勾選了

    Beta 版:使用Unicode UTF-8提供全球語言支持 。取消勾選后,可能不存在該問題。

  • Oracle數據庫連上之后,一直未響應,像卡死了一樣,怎么辦?

    因為Oracle的 列是否自增 的sql語句,查詢效率比較低,查的比較慢,沒有卡死!!請耐心等待!!

🔹注:因Oracle查詢自增相當耗時,Oracle在v1.8.0.3-beta版本及以后暫不會查詢自增數據。

PS:如果你有更好方法,歡迎提供改善建議,助力✊該工具越來越好使!

  • Oracle 11g、Oracle 12c測試連接顯示“[28040]ORA-28040:沒有匹配的驗證協議”?

    目前群里及isuues反饋的問題,可能11g以后的版本均會出現此項問題。

    該問題描述:navicat等工具可以直接連接,但是本程序連接不上有上述問題。

    目前想到的解決問題辦法是,需在sqlnet.ora添加設置

     SQLNET.ALLOWED_LOGON_VERSION=8  SQLNET.ALLOWED_LOGON_VERSION_SERVER=8 SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8
     

    參數值可設置8、10等,使用者可根據需要自行設置。

    ORA-28040修改兼容

    注意:改完后其他相關用戶的密碼必須重置,或直接更新為原來的密碼也是可以的(修改密碼sql示例:alter user System identified by oldpassword;),此項操作慎重。

    要么在建庫的初期添加此參數,然后重置相關密碼;要么新建測試環境,進行此項操作。

    • 其他問題

    如遇其他問題,可以通過Issues或群里反饋,記錄問題,請寫清楚遇到問題的原因、軟件版本、系統環境、數據庫版本、甚至數據庫結構、復顯步驟以及期望達到的效果;建議配上多張全屏大圖,請勿使用局部截屏小圖!方便我們這邊可以迅速定位,就事論事,解決問題。

    如果你有更好的解決方法,歡迎提供改善建議或直接提pr,我們一起完善該工具!

源碼網址:https://gitee.com/dotnetchina/DBCHM

軟件下載地址:https://www.aliyundrive.com/s/zJ6EJ2H2sGV


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM