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易知易會的幾個實用特性