影刀RPA实战:操作Mysql数据库
1.摘要
影刀RPA(Robotic Process Automation)是一种软件自动化工具,它可以模拟人类用户执行各种重复性任务,其中包括对数据库的操作。
我们可以使用软件自动化指令,通过获取数据库窗口对象来操作数据库,也可以使用内置的操作指令来操作,相比较而言,后者更方便,相当于一个简化的数据库管理软件,依旧可以实现增删改查功能。
影刀RPA支持的数据库:

2.实战目标
本次实战的目标,就是用影刀RPA来操作数据库,实现数据增删改查,以及事务操作指令。
需要大家有一定的sql语法基础,会编写数据查询语句,数据插入,更新,删除语句,了解数据库事务
我们在数据中新建demo数据库,新建user表。我们使用这张表演示数据处理。
CREATE TABLE `wk_user` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`name` varchar(30) DEFAULT NULL,`age` int(10) DEFAULT NULL,`job` varchar(60) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COMMENT='用户表';
3.实战代码
3.1 数据库链接指令
功能:链接数据库,获取到一个数据库管理对象,用于后续的数据处理操作。
常规设置:
- 数据库地址: 填入数据库连接地址,如IP形式 127.0.0.1 或域名形式 mysql.yd
- 账号:该项为Mysql用于登录的用户名
- 密码:该项为Mysql用于登录的密码
- 数据库名:填入需要操作的数据库名称
- 是否开启日志:勾选后开启日志
高级设置:
- 最大连接数:数据库池的最大连接数
- 端口:数据连接端口
- 是否开启事务:勾选后初始化生成一个事务对象,用于数据库事务管理
- 字符集选择下拉框

影刀代码:

3.2 数据新增
功能:向数据库中插入一条数据,数据的格式是字典
- 数据库池对象:传入初始化创建的数据库池对象
- 事务管理器:传入当前的事务管理器 (开启事务后传入)
- 表名:传入需要插入数据的表名称
- 数据字典:将所需要插入的数据记录以键值对的字典类型传入

影刀代码:

演示:

批量插入数据
- 数据库池对象:传入初始化创建的数据库池对象
- 事务管理器:传入当前的事务管理器 (开启事务后传入)
- 表名:传入需要插入数据的表名称
- 字段列表:传入所需插入数据的字段名称 如:['col_name1','col_name2']
- 数据字典:将所需要插入的数据以键值对的字典类型传入 如:[[val1,val2],[val3,val4]]

3.3 查询数据
功能:使用查询语句从数据库中获取数据
- 数据库池对象:传入初始化创建的数据库池对象
- 事务管理器:传入当前的事务管理器 (开启事务后传入)
- 表名:传入需要插入数据的表名称
- where条件:无需填入where关键字,为where关键字后语句,如果查询字符串的话,格式需要为name = '测试'
- 字段列表:传入所需用到的字段列表 [col_name1,colname2], 为空则为全表查询

影刀代码:

运行后,我们使用打印日志,可以查看到sql语句,与获取的数据

3.4 更新数据
通过主键条件,修改数据中的数据内容
- 数据库池对象:传入初始化创建的数据库池对象
- 事务管理器:传入当前的事务管理器 (开启事务后传入)
- 表名:传入需要插入数据的表名称
- 数据字典:将所需要更新插入的数据记录以键值对的字典类型传入 如:{'col_name1':val1,'col_name2':val2}

影刀代码:

演示:

通过where条件,修改数据中的数据内容
- 数据库池对象:传入初始化创建的数据库池对象
- 事务管理器:传入当前的事务管理器 (开启事务后传入)
- 表名:传入需要插入数据的表名称
- 数据字典:将所需要更新的数据库记录以键值对的字典类型传入 如:{'col_name1':val1,'col_name2':val2}
- where条件:无需填入where关键字,为where关键字后语句,例如 name = '测试'

影刀指令

演示:

依据主键条件,批量更新插入数据
- 数据库池对象:传入初始化创建的数据库池对象
- 事务管理器:传入当前的事务管理器 (开启事务后传入)
- 表名:传入需要插入数据的表名称
- 字段列表:传入所需插入数据记录的字段名称 如:['col_name1','col_name2']
- 数据字典:将所需要插入的数据以键值对的字典类型传入 如:[[val1,val2],[val3,val4]]

3.5 删除数据
功能:从数据库中删除数据,可以设置删除条件
- 数据库池对象:传入初始化创建的数据库池对象
- 事务管理器:传入当前的事务管理器 (开启事务后传入)
- 表名:传入需要插入数据的表名称
- where条件:无需填入where关键字,为where关键字后语句

影刀代码:

演示:

3.6 事务操作
数据库事务是数据库管理系统中用于处理数据操作的一个单位,它包含了一系列操作,这些操作要么全部成功,要么全部失败。事务的目的是确保数据库的完整性和一致性,即使在系统故障或并发操作的情况下也能保持数据的正确性
数据库事务通常具有以下四个关键特性,即ACID属性:
-
原子性(Atomicity):事务中的所有操作要么全部完成,要么全部不完成。如果事务中的某个操作失败,整个事务将回滚到操作前的状态。
-
一致性(Consistency):事务必须确保数据库从一个一致性状态转换到另一个一致性状态。这意味着事务执行过程中和执行结束后,数据库都必须处于一致性状态。
-
隔离性(Isolation):并发执行的事务之间不会相互影响。每个事务都像是在一个独立的环境中执行,对其他事务不可见,直到事务完成。
-
持久性(Durability):一旦事务被提交,它对数据库的修改就是永久性的。即使系统发生故障,事务的结果也不会丢失。
事务的这些特性确保了即使在并发操作和系统故障的情况下,数据库也能保持数据的完整性和一致性。在数据库操作中,事务的使用是非常重要的,它帮助开发者管理复杂的数据操作,确保数据的准确性和可靠性。
数据库事务操作指令包含开启,提交和回滚事务。
如果程序没有保存,我们就提交事务,执行sql语句
如果程序报错,我们就回滚事务,将之前的数据处理恢复成原样。



在操作过程中,我们一般使用try catch指令一起使用,将执行的sql语句包起来,并开启事务,执行的过程中,有错误会走catch代码块,程序直接事务回滚,没有错误就直接提交事务,完成事务操作

3.7 数据库关闭
功能:关闭数据库,释放资源
- 数据库池对象:数据库的连接对象
- 强制关闭连接并回滚:有时候连接卡死了,可以选择强制关闭连接并进行事务的回滚

4.应用优势
-
批量插入数据:影刀RPA支持将大量数据分批次插入到数据库中,支持MySQL、SQL Server和Oracle等数据库类型。用户需要提供数据库地址、用户名、密码、数据库名、SQL语句以及待插入的数据。它还允许设置单次连接插入的数量,以避免因频繁连接和断开数据库而导致的错误。
-
数据自动化操作:影刀RPA可以自动化执行数据获取、清洗、报表生成等操作。它能够连接到不同的数据库,执行SQL查询,并将结果用于进一步的数据处理和分析。
-
数据库连接和使用:用户可以通过影刀RPA连接到数据库,执行SQL语句,并返回结果集。支持两种连接方式:数据库连接对象和数据库连接字符串。用户可以保存查询结果至变量,以便后续流程使用。
-
减少开发需求:通常情况下,有些功能我们都是使用编程语言实现,比如使用java导出excel数据,但是导出的需求太多,功能代码就会增多,影刀RPA就可以解决这个难题,对于常用固定的我们写出功能,临时提出的我们使用影刀RAP从数据库提取数据,写入excel中。方便快捷。
-
影刀支持缓存数据库redis:操作数据库获取数据,直接写入redis,比我们之前使用代码链接数据库在写入更快,减少了代码编写,部署发布的流程,并且我们可以在影刀上实时查询,检查数据的准确性
5.最后
相关文章:
影刀RPA实战:操作Mysql数据库
1.摘要 影刀RPA(Robotic Process Automation)是一种软件自动化工具,它可以模拟人类用户执行各种重复性任务,其中包括对数据库的操作。 我们可以使用软件自动化指令,通过获取数据库窗口对象来操作数据库,也…...
【c++】c++11多线程开发
2 C多线程 本文是参考爱编程的大丙c多线程部分内容,按照自己的理解对其进行整理的一篇学习笔记,具体一些APi的详细说明请参考大丙老师教程。 代码性能的问题主要包括两部分的内容,一个是前面提到资源的获取和释放,另外一个就是多…...
PW37R_V1 产品规格书
概述 PW37R_V1是一款采用3.7英寸黑白红三色电子纸显示的电子标签,采用一种先进的无线自动更新系统,实现无线传输。 通过http,mqtt协议更新数据和控制该款电子标签的显示等操作,显示内容可自定义。内置电池供电,可Typ…...
android11 usb摄像头添加多分辨率支持
部分借鉴于:https://blog.csdn.net/weixin_45639314/article/details/142210634 目录 一、需求介绍 二、UVC介绍 三、解析 四、补丁修改 1、预览的限制主要存在于hal层和framework层 2、添加所需要的分辨率: 3、hal层修改 4、frameworks 5、备…...
【开源免费】基于SpringBoot+Vue.JS房屋租赁系统(JAVA毕业设计)
本文项目编号 T 020 ,文末自助获取源码 \color{red}{T020,文末自助获取源码} T020,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…...
JavaScript全面指南(二)
🌈个人主页:前端青山 🔥系列专栏:Javascript篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来JavaScript篇专栏内容:JavaScript全面指南(二) 目录 21、说明如何使用JavaScript提交表单? 2…...
Nginx:Linux配置Nginx
目录 一、环境安装1.1 GCC编译器1.2 PCRE1.3 Zlib1.4 OpenSSL1.5 快速下载 二、Nginx源码简单安装2.1 下载安装包2.2 解压2.3 进入资源文件中2.4 编译、安装 三、Yum安装四、Nginx源码复杂安装4.1 参数介绍4.2 参数配置 五、卸载Nginx5.1 关闭Nginx进程5.2 将安装的Nginx删除5.…...
WebRTC音频 04 - 关键类
WebRTC音频01 - 设备管理 WebRTC音频 02 - Windows平台设备管理 WebRTC音频 03 - 实时通信框架 WebRTC音频 04 - 关键类(本文) 一、前言: 在WebRTC音频代码阅读过程中,我们发现有很多关键的类比较抽象,搞不清楚会导致代码阅读一脸懵逼。比如…...
Elasticsearch:Redact(编辑) processor
Redact 处理器使用 Grok 规则引擎来隐藏输入文档中与给定 Grok 模式匹配的文本。该处理器可用于隐藏个人身份信息 (Personal Identifying Information - PII),方法是将其配置为检测已知模式,例如电子邮件或 IP 地址。与 Grok 模式匹配的文本将被替换为可…...
O2OA结合备份脚本和定时任务进行数据库的备份,我们以MySQL数据库为例
概述 系统运行一段时间后,可能发生各种情况导致数据丢失,如硬件故障、人为错误、软件错误、病毒攻击等。定期备份可以帮助您保护数据免受这些风险的影响,以便在需要时能够恢复数据。 O2OA应用本身可以通过dump配置每天自定备份数据ÿ…...
Python自动化办公:批量提取PDF中的表格到Excel
在现代办公环境中,处理大量的PDF文件并提取其中的表格数据是一项常见而繁琐的任务。手动复制粘贴不仅耗时耗力,还容易出错。Python作为一种功能强大的编程语言,提供了丰富的工具包,可以高效地解决这一问题。本文将介绍如何使用Pyt…...
selenium有多个frame页时的操作方法(5)
之前文章我们提到,在webdriver.WebDriver类有一个switch_to方法,通过switch_to.frame()可以切换到不同的frame页然后才再定位某个元素做一些输入/点击等操作。 比如下面这个测试网站有2个frame页:http://www.sahitest.com/demo/framesTest.h…...
谷歌外链的周期性维护!
外链建设不是一次性的工作,它需要长期的维护和更新,才能持续为网站带来稳定的流量和SEO提升。很多网站在初期通过短期内大规模获取外链的方式,确实能看到排名的提升,但这种方法往往难以维持长期的效果。谷歌更喜欢自然、持续增长的…...
CATIA软件许可管理最佳实践
在当今的工程设计领域,CATIA软件已成为众多企业不可或缺的工具。然而,随着软件使用的广泛普及,许可管理变得尤为关键。本文将为您探讨CATIA软件许可管理的最佳实践,助您在确保合规性的同时,实现成本效益的最大化。 一、…...
大华智能云网关注册管理平台 SQL注入漏洞复现(CNVD-2024-38747)
0x01 产品简介 大华智能云网关注册管理平台是一款专为解决社会面视频资源接入问题而设计的高效、便捷的管理工具,平台凭借其高效接入、灵活部署、安全保障、兼容性和便捷管理等特点,成为了解决社会面视频资源接入问题的优选方案。该平台不仅提高了联网效率,降低了联网成本,…...
什么是思维导图,手把手教你做经典思维导图
在信息爆炸的时代,如何高效整理思绪、激发创意、提升学习效率成为了我们共同面临的挑战。思维导图,这一源自脑科学的思维工具,以其直观、灵活的特点,成为了众多学习者、管理者和创意人士的得力助手。今天,就让我们一起…...
使用GSEA读‘gmt文件‘时最后一行未遂问题解决
最近工作中,使用GSEA网站自定义库下载的gmt文件用函数读取的时候报错: 这种问题在文本文件读取中经常出现,往往因为最后一行未留出/n,也就是最后一行没有换行留出空行。 可以使用notepad打开gmt文件: 发现果然最后一行…...
C++中vector常用函数总结
一,vector vector可以理解为一个边长数组,可以存储不同的类型,int ,double,char,结构体等。 也可以才能出STL标准容器,如set,string,vector等 二,构造函数 vector(size_t n,T val) …...
手撕数据结构 —— 队列(C语言讲解)
目录 1.什么是队列 2.如何实现队列 3.队列的实现 Queue.h中接口总览 具体实现 结构的定义 初始化 销毁 入队列 出队列 取队头元素 取队尾元素 判断是否为空 获取队列的大小 4.完整代码附录 Queue.h Queue.c 1.什么是队列 队列是一种特殊的线性表࿰…...
Java知识巩固(五)
目录 基本数据类型 基本类型和包装类型的区别? 自动装箱与拆箱了解吗?原理是什么? 为什么浮点数运算的时候回邮精度丢失的风险? 如何解决浮点数运算的精度丢失问题? 超过 long 整型的数据应该如何表示? 基本数据…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
Xela矩阵三轴触觉传感器的工作原理解析与应用场景
Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知,帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量,能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度,还为机器人、医疗设备和制造业的智…...
【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统
Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...
WebRTC调研
WebRTC是什么,为什么,如何使用 WebRTC有什么优势 WebRTC Architecture Amazon KVS WebRTC 其它厂商WebRTC 海康门禁WebRTC 海康门禁其他界面整理 威视通WebRTC 局域网 Google浏览器 Microsoft Edge 公网 RTSP RTMP NVR ONVIF SIP SRT WebRTC协…...
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南 背景介绍完整操作步骤1. 创建Docker容器环境2. 验证GUI显示功能3. 安装ROS Noetic4. 配置环境变量5. 创建ROS节点(小球运动模拟)6. 配置RVIZ默认视图7. 创建启动脚本8. 运行可视化系统效果展示与交互技术解析ROS节点通…...

