Excel連接openGauss數據庫實操
目錄
前言
互聯網是個快節奏的時代,不懂得運用工具,將時間浪費在瑣碎的事務中,將會極大的影響工作效率。 例如我們在工作中處理表格和數據時會經常用到Excel。基於此,本文將簡單介紹一下Excel 連接openGauss數據庫的兩種方式,歡迎交流。
一、通過excel 添加數據源訪問openGauss
1、查看Excel版本
打開Excel程序, 文件——賬户——關於excel,如截圖。
2、下載 ODBC驅動
用户可以在華為雲管理控制枱下載GaussDB(DWS) 提供ODBC驅動程序(也可以使用開源的ODBC驅動程序)。
- 登錄華為雲管理控制枱——在控制枱左邊列表,單機服務列表——大數據——數據倉庫服務GaussDB(DWS)。
- 在左側導航欄中,單擊“連接管理”。
3)在“下載驅動程序”區域,選擇一個驅動下載。
ODBC驅動:選擇相應的版本,然後單擊“下載”可以下載與集羣版本匹配的ODBC驅動。單擊“歷史版本”可根據操作系統和集羣版本下載相應版本的ODBC驅動,建議按集羣版本進行下載。
本次測試下載的是 “Microsoft Windows x86_64”驅動,其支持在以下系統中使用:
- Windows 7及以上。
- Windows Server 2008及以上。
特別説明:Windows驅動只支持32位版本,可以在32或64位操作系統使用,但是應用程序必須為32位。
3、安裝ODBC驅動
將下載的ODBC驅動解壓,選則32位的進行安裝。
安裝過程:以管理員身份運行,然後一路點“Next”,直到 Finish 即可。
4、添加ODBC數據源
依次打開:控制面板-管理工具-ODBC Data Sources (32-bit)。
點擊右邊的添加按鈕,找到 PostgreSQL Unicode,雙擊,填寫連接信息(如下截圖),點擊Test。
提示成功後,點擊保存(Save)。
5、在excel中添加數據源(訪問openGauss)
依次點擊:數據——其他來源——來自數據連接嚮導。
選擇“ODBC DSN”
選擇數據庫和表
點“完成”,進到導入數據界面
點“屬性” 按鈕,進入“使用狀況”選項卡,可設置數據刷新的規則。
進入“定義”選項卡,可進行編輯,獲取相應的數據:
二、通過excel 的VBA(宏)訪問openGauss
1、宏權限設置
打開excel 程序, 進入文件——選項——信任中心——信任中心設置:
- 起啟用所有宏
- 信任對VBA工程對象模型的訪問
2、添加“開發工具”
打開excel 程序, 進入文件——選項——自定義功能區
選擇“開發工具” 打√。
3、創建按鈕事件,訪問openGauss
添加“連接openGauss” 按鈕,通過如下截圖過程進入宏的編輯界面:
編寫Vba腳本,訪問openGauss數據庫:
4、附代碼説明(Vba)
Sub 連接openGauss()
Dim cn As Object '定義數據鏈接對象 ,保存連接數據庫信息
Dim rs As Object '定義記錄集對象,保存數據表
Set cn = CreateObject("ADODB.Connection") '創建數據鏈接對象
Set rs = CreateObject("ADODB.RecordSet") '創建記錄集對象,用於接收數據查詢獲得的結果集
Dim strCn As String '字符串變量
Dim strSQL As String '字符串變量
strCn = "DSN=openGauss;DATABASE=postgres;SERVER=192.168.52.3;PORT=26000;UID=omm2;SSLmode=disable;ReadOnly=0" '定義數據庫鏈接字符串
strSQL = "SELECT id,name,age,address,salary FROM company1" '設置SQL語句
cn.Open strCn '打開連接
rs.Open strSQL, cn '讀取數據庫中的數據
Dim i As Integer, sht As Worksheet 'i為整數變量;sht 為excel工作表對象變量,指向某一工作表
i = 1
Set sht = ThisWorkbook.Worksheets("Sheet2")
'循環讀取數據並將數據顯示到excel中
Do While Not rs.EOF '當數據指針未移到記錄集末尾時,循環下列操作
sht.Cells(i, 1) = rs("id") '把當前記錄的字段1的值保存到sheet1工作表的第i行第1列
sht.Cells(i, 2) = rs("name") '把當前字段2的值保存到sheet1工作表的第i行第2列
sht.Cells(i, 3) = rs("age") '把當前字段3的值保存到sheet1工作表的第i行第3列
sht.Cells(i, 4) = rs("address") '把當前字段4的值保存到sheet1工作表的第i行第4列
sht.Cells(i, 5) = rs("salary") '把當前字段5的值保存到sheet1工作表的第i行第5列
rs.MoveNext '把指針移向下一條記錄
i = i + 1 'i加1,準備把下一記錄相關字段的值保存到工作表的下一行
Loop '循環
rs.Close '關閉記錄集,至此,程序將把某數據表的字段1和字段2保存在excel工作表sheet1的第1、2列,行數等於數據表的記錄數
End Sub
三、Excel 訪問openGauss數據庫 應用場景舉例
1、實現自動化實時監控相關數據,例如:跑批作業狀態表、某項實時數據閾值監測等。
2、實現自動化業務報表展示等。
- GaussDB數據類型轉換介紹
- 通過公網連接GaussDB數據庫實例
- GaussDB數據類型介紹
- 如何通過DAS連接GaussDB
- 企業級分佈式數據庫 - GaussDB介紹
- GaussDB 數據庫實驗環境搭建指導
- Tableau連接openGauss實踐
- 以學校數據模型為例,掌握在DAS下使用GaussDB
- openGauss數據庫共享存儲特性簡介
- openGauss數據庫源碼解析系列文章——備份恢復機制:openGauss增量備份技術(上)
- openGauss數據庫客户端接入認證詳解
- Excel連接openGauss數據庫實操
- openGauss數據庫源碼解析系列文章——備份恢復機制:openGauss全量備份技術
- 超市進銷存之openGauss數據庫的應用與實踐
- 在WPS表格裏製作連接到openGauss的實時刷新報表
- openGauss數據庫PostGIS 安裝與使用
- openGauss中Schema賦權小試
- openGauss Cluster Manager RTO Test
- 【我和openGauss的故事】openGauss獲獎項目講解
- openGauss易知易會的幾個實用特性