博客 / 詳情

返回

DBeaver 與 Excel JDBC 驅動(xlSql)使用説明

項目地址github: https://github.com/daichangya/xlsql

1. 概述

本文檔詳細介紹瞭如何在 DBeaver 中配置和使用 Excel JDBC 驅動來連接和操作 Excel 文件。Excel JDBC 驅動允許用户像操作數據庫一樣查詢和修改 Excel 文件中的數據。

2. 準備工作

2.1 系統要求

  • Java 8 或更高版本
  • DBeaver 21.0 或更高版本
  • Excel JDBC 驅動 JAR 文件

2.2 獲取 Excel JDBC 驅動

方式一:從 Maven Central 獲取(推薦)

XLSQL 5.1.1 已發佈到 Maven Central,可以直接通過 Maven 依賴使用:

<dependency>
    <groupId>io.github.daichangya</groupId>
    <artifactId>xlsql</artifactId>
    <version>5.1.1</version>
</dependency>

方式二:手動下載 JAR 文件

從 Maven Central 下載:

  • 標準 JAR: https://repo1.maven.org/maven2/io/github/daichangya/xlsql/5.1...
  • Shaded JAR (包含所有依賴): https://repo1.maven.org/maven2/io/github/daichangya/xlsql/5.1...

3. 在 DBeaver 中配置 Excel JDBC 驅動

3.1 打開驅動管理器

  1. 啓動 DBeaver
  2. 點擊菜單欄 DatabaseDriver Manager

3.2 創建新驅動

  1. 點擊 New 按鈕創建新驅動
  2. Settings 標籤頁中填寫以下信息:

    • Driver Name: Excel JDBC Driver
    • Class Name: io.github.daichangya.xlsql.jdbc.xlDriver
    • URL Template: jdbc:xlsql:excel:{path}
    • Port: (留空)

dbeaver1

3.3 添加驅動文件

  1. 切換到 Libraries 標籤頁
  2. 點擊 Add File 按鈕
  3. 選擇你的 Excel JDBC 驅動 JAR 文件

    • 路徑示例:/path/to/xlsql-5.1.1.jar
  4. 點擊 OK 保存驅動配置

4. 創建數據庫連接

4.1 新建連接

  1. 點擊 DatabaseNew Database Connection
  2. 在連接類型列表中選擇 GenericGeneric JDBC
  3. 點擊 Next

4.2 配置連接參數

  1. Driver: 選擇之前創建的 "Excel JDBC Driver"
  2. JDBC URL: 輸入 Excel 文件路徑

    jdbc:xlsql:excel:/path

    示例:

    jdbc:xlsql:excel:/Users/username/Documents

4.3 測試連接

  1. 點擊 Test Connection 按鈕
  2. 如果配置正確,會顯示 "Connected" 消息
  3. 點擊 Finish 完成連接創建

5. 使用 Excel JDBC 驅動

5.1 瀏覽數據結構

連接成功後,你可以在 DBeaver 的數據庫導航器中看到:

  • Excel 文件作為數據庫顯示
  • 每個工作表作為數據表顯示
  • 表的列對應 Excel 中的第一行標題

5.2 執行 SQL 查詢

在 SQL 編輯器中可以執行標準 SQL 查詢:(使用下劃線格式,表名和字段名無需引號)

-- 查詢所有數據(使用下劃線格式,無需引號)
SELECT * FROM test1_Sheet1;

-- 條件查詢
SELECT * FROM test1_Sheet1 WHERE column1 = 'value';

-- 聚合查詢
SELECT COUNT(*) FROM test1_Sheet1;

-- 排序查詢
SELECT * FROM test1_Sheet1 ORDER BY column1;

dbeaver2-n9ho.png

6. Excel 文件要求

6.1 文件格式

  • 支持 .xls`.xlsx` 格式

6.2 工作表結構

  1. 第一行為列標題
  2. 標題應使用有效的 SQL 標識符
  3. 避免使用特殊字符和空格
  4. 每列應保持數據類型一致

6.3 示例 Excel 結構

| Name    | Age | City      |
|---------|-----|-----------|
| John    | 25  | New York  |
| Jane    | 30  | Los Angeles |

7. 常見問題和解決方案

7.1 連接失敗

問題: Cannot invoke "String.length()" because "<parameter1>" is null
解決方案:

  • 檢查 JDBC URL 中的文件路徑是否正確
  • 確保 Excel 文件存在且可訪問

7.2 驅動未找到

問題: Driver class not found
解決方案:

  • 確認驅動 JAR 文件已正確添加到驅動配置中
  • 檢查驅動類名是否正確:io.github.daichangya.xlsql.jdbc.xlDriver

7.3 權限問題

問題: Permission denied 訪問 Excel 文件
解決方案:

  • 檢查文件權限
  • 確保 DBeaver 進程有讀寫文件的權限

7.4 中文字符亂碼

解決方案:

  • 確保 Excel 文件使用 UTF-8 編碼
  • 在連接參數中指定字符集

8. 高級配置

8.1 連接屬性

可以在連接配置中設置以下屬性:

  • charset: 指定字符集編碼
  • readonly: 設置只讀模式

8.2 性能優化

  • 對於大型 Excel 文件,建議使用過濾條件減少數據加載
  • 避免在複雜公式的工作表上執行查詢

9. 限制和注意事項

9.1 功能限制

  1. 不支持複雜的數據類型(如圖片、圖表等)
  2. 不支持 Excel 公式計算
  3. 對大型文件的性能可能較差
  4. 併發訪問支持有限

9.2 數據類型映射

Excel 類型 SQL 類型
文本 VARCHAR
數字 NUMERIC
日期 DATE
布爾值 BOOLEAN

9.3 最佳實踐

  1. 定期備份重要的 Excel 文件
  2. 在執行寫操作前確認文件未被其他程序佔用
  3. 避免在生產環境中直接修改原始數據文件
  4. 使用副本文件進行測試操作

10. 故障排除

10.1 日誌查看

  1. 在 DBeaver 中打開 WindowShow ViewError Log
  2. 查看詳細錯誤信息

10.2 啓用調試模式

在啓動 DBeaver 時添加調試參數:

dbeaver -vmargs -Dorg.jkiss.dbeaver.debug=true

10.3 聯繫支持

如果遇到無法解決的問題,請提供:

  • 完整的錯誤日誌
  • 使用的 Excel 文件示例
  • DBeaver 和驅動版本信息

11. 版本兼容性

DBeaver 版本 Excel JDBC 驅動版本 兼容性
21.x 5.1.1
22.x 5.1.1

12. 更新日誌

版本 5.1.1

  • 初始版本
  • 支持基本的 CRUD 操作
  • 支持 .xls .xlsx 格式文件
  • 與 DBeaver 集成

注意: 本文檔基於 Excel JDBC 驅動版本 5.1.1 編寫,具體功能可能因版本更新而有所變化。建議在使用前確認當前版本的功能特性。

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.