【openGauss】在WPS表格里制作连接到openGauss的实时刷新报表

news2025/1/13 13:14:06

前言

其实我的数据库启蒙,是在一家甲方公司。
当时一进这家公司,就见到了通过连接数据库自动刷新的excel表。当时学会了这招就一发不可收拾,制作出各种自动刷新的报表。
想象一下,有些高管不喜欢打开各种复杂的业务系统或者报表系统,一上班就直接打开桌面上的可刷新表格文件,就能看到昨日的报表数据以及今日的实时数据。
当年智能手机还未普及,没有移动端报表,每晚的值班经理需要查询当日数据编辑短信发送给高管,也是在电脑上用EXCEL直接刷出数据,而且提前在EXCEL里写好了公式,拼接成了短信文本内容,复制粘贴到飞信就把业绩短信发出去了,多少年来一直都是这么用的,只是后来改成了粘贴到微信发送。

在当时,这也算是极低成本的半自动化了,好不惬意!

当时连接的主要是Oracle数据库,现在突然想起,是不是我们的国产数据库也可以这样连接呢?

原理

其实原理很简单,就是在windows的odbc数据源中配置好对应的数据库连接,然后在excel或者wps表格中选择导入数据/odbc数据源,选择需要的表及字段,或者直接写个sql查询也行,就可以把数据返回到表格中。当数据库中的数据发生变化时,只需要在表格中点击刷新或者或者设置刷新频率即可

步骤

安装ODBC驱动

windows端ODBC驱动下载(支持sha256) https://obs.myhuaweicloud.com/dws/download/dws_8.1.x_odbc_driver_for_windows.zip

下载好后,解压,根据使用的wps或msoffice是64位还是32位版本,执行对应的安装程序(目测大多数人安装的都是32位版本),一路“next”就行了。
不知道自己安装的是32还是64位的,可以把程序打开,到任务管理器里找到对应的程序,会有显示
image-1668874050903

添加ODBC数据源

  1. 依次打开
    控制面板-管理工具-ODBC Data Sources (32-bit)
    image-1668874143580
  2. 点击右边的添加按钮,找到 PostgreSQL Unicode,双击
    image-1668874242003
  3. 然后填写连接信息,并点击Test
    image-1668874405597
  4. 提示连接成功,确定,点击SAVE保存,会弹出安全提示,意思就是连接信息会保存在系统注册表里,不安全,问是否继续,点"是"(本篇不讨论安全问题,请自行斟酌)
    image-1668874472622
  5. 然后就可以看到数据源里多了一个刚刚新建的数据源
    image-1668874765760

在WPS中引用数据源

  1. 新建一个空白表格
  2. 点击 数据 - 导入数据,选择ODBC DSN
    image-1668874917682
  3. 选择刚刚新建的数据源,确定,下一步
    image-1668874959657
  4. 选择需要的表,并将需要的字段移到右边,点击下一步
    image-1668875300934
  5. 选择手工输入连接语句,点击下一步
    image-1668875424131
  6. 预览没有问题,点击完成
    image-1668875476891
  7. 选择数据需要存放的开始单元格,点击确定
    image-1668875523076
  8. 数据就放回到表格中了
    image-1668875560923

验证数据刷新

  1. 在数据库中执行sql修改数据,比如让所有人的工资翻倍
update scott.emp set sal=sal*2 where 1=1;

image-1668875774103
windows端gsql下载 (支持sha256)https://obs.myhuaweicloud.com/dws/download/dws_8.1.x_gsql_for_windows.zip
2. 在表格数据区域点击鼠标右键,刷新数据
image-1668875838278
3. 可以看到数据都变更了
image-1668875866935

配置数据自动刷新

  1. 在表格数据区域点击鼠标右键,点击数据区域属性
    image-1668875958517
  2. 设置刷新频率,并勾选打开文件时刷新数据
    image-1668876065494

总结

本篇只举了个最简单的例子,实际上,新建多个查询,结合表格的公式,并调整表格的样式,是可以制作出相当精美的报表的,而且只用做一次,以后一直都能用,数据都是可以实时从数据库中获取的。
另外,以上操作在MSOFFICE中的EXCEL也是类似的,只是EXCEL还有个MSQUERY的程序,可以可视化编辑多表的关联关系,有兴趣的可以自己尝试一下。

  • 本文作者: DarkAthena
  • 本文链接: https://www.darkathena.top/archives/opengauss-wps-excel-realtime-report-sha256
  • 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/19422.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JS基础】在js中如何简单的使用正则表达式

文章目录前言创建正则字符类型的匹配方法searchreplacematch正则的匹配方法test转义特殊符号冲突正则创建问题记一些规则符号修饰符原子表[]和原子组()配合转义字符其他字符量词一些实用的正则前言 关于正则表达式的介绍,推荐看这篇文章正则表达式30分钟入门教程&a…

[附源码]java毕业设计商务酒店管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

鲁棒无范围定位算法 (RRGA)(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

LVS-NAT集群搭建

目录 一、环境准备 1、准备三台centos服务器 2、实验拓扑 3、NAT模式介绍 二、LVS-NAT模式部署 1、给lvs服务器安装LVS 2、新建LVS集群 3、添加Real Server服务器节点 4、开启路由转发 5、给后端web服务器配置网关 6、效果测试 一、环境准备 1、准备三台centos服务器…

【C++右值引用】左右值的交叉引用的具体情景,右值详讲

目录 1.右值和左值 2.左值引用和右值引用 3.左右值的交叉引用的具体情景 3.4当不接受返回值就没有办法优化 1.右值和左值 左值与右值是C语言中的概念,但C标准并没有给出严格的区分方式,一般认为:可以放在左边的,或者能 够取地…

基于stm32单片机的光照检测智能台灯

资料编号&#xff1a;101 下面是相关功能视频演示&#xff1a; 101-基于stm32单片机的光照检测智能台灯照明灯Proteus仿真&#xff08;仿真源码全套资料&#xff09;功能介绍&#xff1a; 1、设置为自动模式下&#xff1a;可以检测光照强度&#xff0c;当光照强度<100Lux的…

QT QThread 多线程操作

在QT中&#xff0c;QT应用程序所在的线程为主线程&#xff0c;也称为“GUI线程”&#xff0c;QT GUI必须运行在此线程上&#xff1b;而非主线程称为“工作者线程”&#xff0c;主要处理从主线程中卸下的一些工作&#xff0c;例如数据的同步访问等。需要明确的是&#xff0c;同一…

SSH框架过时了吗?那就最后分享一份阿里架构师整合的SSH框架实战心得吧!

记得当年 java 的企业级框架还是 ssh 的天下&#xff08;spring&#xff0c;struts和hibernate&#xff09;&#xff0c;但是现在感觉 spring 已经完全把那两个框架甩在后边了。用 spring 的人越来越多&#xff0c;用 struts 的人比原来少多了&#xff0c;用 hibernate 的就更少…

BI-SQL丨SNAPSHOT

快照&#xff08;SNAPSHOT&#xff09; 我们在做BI项目的过程&#xff0c;一旦数据涉及到数据库&#xff0c;那么需要考量到的点就比较多。 1.如果数仓是在项目过程中搭建的&#xff0c;那么需要考虑高可用、灾备机制以及安全性问题&#xff1b; 2.如果我们只是需要连接数据库…

Vue3留言墙项目——头部和底部静态页面搭建

文章目录创建项目头部底部创建项目 Vue中使用scss 头部 头部当中有两个按钮&#xff0c;然后根据设计稿可知&#xff0c;本留言墙中有4个按钮&#xff0c;所以可以自己封装一个按钮组件 按钮组件的博客 components/TopNav.vue <template><div class"topNav…

Vue封装一个按钮组件(不使用框架)

做留言墙项目&#xff0c;根据设计稿&#xff0c;发现有四种按钮&#xff0c;这里不使用框架&#xff0c;自己写一个按钮组件 在components下新建MyButton/MyButton.vue <template><button :class"my-btn btn-${type}"><slot></slot></b…

PLC学习笔记(一):概述

如今&#xff0c;电气装置的控制愈发复杂&#xff0c;仅仅依靠低压电器构建逻辑控制电路显得捉襟见肘&#xff0c;而将逻辑控制电路软件化是在满足控制需求前提下降低成本、提高可靠性的重要途经。 那么&#xff0c;我们是选择单片机还是PLC呢&#xff1f;若选择使用单片机&…

嵌入式开发学习之--初识stm32函数库

提示&#xff1a;本篇文章主要以了解为主。 文章目录前言一、库目录及文件简介二、常用资料总结前言 上一篇说到&#xff0c;其实我们不必去直接操作寄存器&#xff0c;也不必自己去写库函数&#xff0c;stm32官方函数库已经满足我们绝大部分的需求了&#xff0c;这一篇文章&a…

逻辑漏洞挖掘

逻辑漏洞# 逻辑漏洞是指由于程序逻辑输入管控不严或者逻辑太复杂&#xff0c;导致程序不能够正常处理或处理错误&#xff0c;逻辑漏洞根据功能需求的不同产生的漏洞方式也不同。一般出现在网站程序的登录注册、密码找回、验证方式、信息查看、交易支付金额等地方。 这类漏洞不…

【第十五章 java反射机制,获取Class类的实例,创建运行时类的对象,调用运行时类中指定的结构】

第十五章 java反射机制&#xff0c;获取Class类的实例&#xff0c;创建运行时类的对象&#xff0c;调用运行时类中指定的结构 1.java反射机制概述 加载完类之后&#xff0c;在堆内存的方法区中就产生了一个Class类型的对象&#xff08;一个类只有一个Class对象&#xff09;&am…

[计算机毕业设计]改进粒子群算法的监测资源调度

前言 &#x1f4c5;大四是整个大学期间最忙碌的时光,一边要忙着准备考研,考公,考教资或者实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过…

【学海】中位数(Median)的介绍以及如何在不同条件下计算中位数

一、什么是中位数 中位数是指将数据按大小顺序排列起来&#xff0c;形成一个数列&#xff0c;居于数列中间位置的那个数据。中位数用Me表示。 从中位数的定义可知&#xff0c;所研究的数据中有一半小于中位数&#xff0c;一半大于中位数。中位数的作用与算术平均数相近&#…

CAD DWG 比较--DWG Compare ActiveX Control

DWG Compare ActiveX Control AutoDWG DWG 比较 ActiveX 控件&#xff0c;比以往更快&#xff01; DWGCompareX 是一个主动控件 (COM)&#xff0c;可帮助您找出 AutoCAD 图形版本之间的差异并以图形方式显示它们。 主要特征&#xff1a; 显示视图中的差异&#xff0c;对添加的实…

LeetCode-剑指51-数组中的逆序对

1、归并排序 我们可以利用归并排序在合并两个数组时会比较两个数组中的值来确定有多少逆序对。我们用左指针指向左边的数组&#xff0c;右指针指向右边的数组。每当左指针右移时&#xff0c;我们在总数上加上右指针指向位置与起始位置的差值即可。 class Solution { public:i…

基于stm32单片机自动灭火火灾报警装置Proteus仿真

资料编号&#xff1a;102 下面是相关功能视频演示&#xff1a; 102-基于stm32单片机自动灭火火灾报警装置Proteus仿真&#xff08;仿真源码全套资料&#xff09;功能介绍&#xff1a; 火焰传感器的原理&#xff1a;是通过感知外部特殊波段光照强度的突变来判断是否出现火灾&a…