Excel连接openGauss数据库实操

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

目录

前言

一、通过excel 添加数据源访问openGauss

1、查看Excel版本

2、下载 ODBC驱动

3、安装ODBC驱动

4、添加ODBC数据源

5、在excel中添加数据源访问openGauss

二、通过excel 的VBA宏访问openGauss

1、宏权限设置

2、添加“开发工具”

3、创建按钮事件访问openGauss

4、附代码说明Vba

三、Excel 访问openGauss数据库 应用场景举例


前言

互联网是个快节奏的时代不懂得运用工具将时间浪费在琐碎的事务中将会极大的影响工作效率。 例如我们在工作中处理表格和数据时会经常用到Excel。基于此本文将简单介绍一下Excel 连接openGauss数据库的两种方式欢迎交流。

通过excel 添加数据源访问openGauss

1、查看Excel版本

打开Excel程序 文件——账户——关于excel如截图。

2、下载 ODBC驱动

用户可以在华为云管理控制台下载GaussDB(DWS) 提供ODBC驱动程序也可以使用开源的ODBC驱动程序

  1. 登录华为云管理控制台——在控制台左边列表单机服务列表——大数据——数据仓库服务GaussDB(DWS)
  2. 在左侧导航栏中单击“连接管理”。

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、实现自动化业务报表展示等。

openGauss: 一款高性能、高安全、高可靠的企业级开源关系型数据库。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: 数据库