【node-RED 4.0.2】连接操作 Oracle 数据库实现 增 删 改 查【新版,使用新插件:@hylink/node-red-oracle】

总览

上节课,我们说到,在 node-red 上链接 oracle 数据库
我们使用的插件是 node-red-contrib-agur-connector。
其实后来我发现,有一个插件更简便,并且也更好用:@hylink/node-red-oracle

在这里插入图片描述

!!!警告 !!!
如果你没有看我的上一篇博客,那么我推荐你在看此博客之前,务必阅读并操作其他必要的准备步骤。
请先观看我的这篇博客的 二、1 ~ 二、8(二、9 和之后的小节不需要看了,我们使用新插件):

【node-RED 4.0.2】连接 Oracle 数据库踩坑解决,使用模组:node-red-contrib-agur-connector

一、操作

1.温馨提示

默认你已经看了我刚才说的,我的上一篇博客。
已经配置好了环境变量、instantclient、oracleclient 配置文件、netsql.ora、listener.ora 等等。
可以继续了 ↓

2.安装 @hylink/node-red-oracle 模组节点

打开节点管理器(nodered配置窗口)

在这里插入图片描述

搜索并安装:

@hylink/node-red-oracle

在这里插入图片描述

3.配置@hylink/node-red-oracle的节点信息

先创建一个 @hylink/node-red-oracle 的节点实例(名为 oracle),然后双击编辑它

在这里插入图片描述

我们点击 “ + ”,添加一个新的 Server 配置

在这里插入图片描述

进入,然后编辑,name 随便填,自己喜欢的。

Host:填写你的服务器的外网 IP
Port:1521
Database:你的数据库的 SID
User、Passwrod:数据库的 用户账户 和 密码
Mode:一般选择 Thin 即可(Thin由java编写,兼容性加强,虽然会损失一部分性能。如果对性能要求很高,可以试一下 Thick 版本,配置方式大同小异)

在这里插入图片描述

4.创建注入节点 - 1:SQL 注入节点

随便写一句 SQL 用于查询。
在这里,我已经创建好了一个表叫 TEST,它有4个字段。
请你也选择你的数据库中的表,不要照搬全抄!

我插入的 SQL(请一定选择 msg.topic 进行发送,而且使用 String):

INSERT INTO TEST (ID, NAME, DESCRIPTION, CREATED_AT) VALUES (6655, 'TestName4', 'This is a test description 4', TO_DATE('2024-07-14', 'YYYY-MM-DD'))

在这里插入图片描述

5.创建注入节点 - 2:COMMIT(!!最重要的)

为什么要使用 COMMIT?

无论是 SQLPLUS 还是 Navicat 等软件连接 Oracle,都是直接运行 SQL 语句就好了。
然而实际上,如果你在这里这样做,那么不会报错,但数据不会被真实地插入进表中。
这是因为 SQLPLUS 和 Navicat 等软件都已经为我们设置了运行 SQL 的增删改查语句,就会自动 COMMIT。
而我们现在是手动配置模式,所以必须需要 Commit 上传确定更改。

在这里插入图片描述

6.连接你的 oracle node 和 inject node 如下:

inject_SQL 是用来发送 SQL 语句给 oracle 的
inject_COMMIT 是用来发送 COMMIT 给 oracle 的,也就是“确认”SQL语句的操作。

在这里插入图片描述

7.创建一个 HTTP response 节点如下

在这里插入图片描述

8.创建一个 Debug 节点如下

在这里插入图片描述

9.部署项目,并调右边的栏为 debug 调试窗口

在这里插入图片描述

10.点击 inject,先后分别注入 inject_SQL 和 inject_COMMIT

先看一眼数据库的TEST表,
我们一会儿要注入 ID=6655 的数据,现在的数据库 TEST 表是这样的:

在这里插入图片描述

先后分别注入 inject_SQL 和 inject_COMMIT,各点一次 inject 按钮。
观察 debug 调试台输出:

在这里插入图片描述

11.查看数据库,是不是新插入了 ID==6655 的行?

成功,测试配置完毕。
我们测试了 “增”,
“删、改、查” 也是同理,都需要 COMMIT。

在这里插入图片描述

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

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

相关文章

Golang | Leetcode Golang题解之第240题搜索二维矩阵II

题目&#xff1a; 题解&#xff1a; func searchMatrix(matrix [][]int, target int) bool {m, n : len(matrix), len(matrix[0])x, y : 0, n-1for x < m && y > 0 {if matrix[x][y] target {return true}if matrix[x][y] > target {y--} else {x}}return f…

智能听诊器:宠物健康监测的革新者

宠物健康护理领域迎来了一项激动人心的技术革新——智能听诊器。这款创新设备以其卓越的精确度和用户友好的操作&#xff0c;为宠物主人提供了一种全新的健康监测方法。 使用智能听诊器时&#xff0c;只需将其放置在宠物身上&#xff0c;它便能立即捕捉到宠物胸腔的微小振动。…

linux安装keepalived教程

1.安装依赖包 yum install -y curl gcc openssl-devel libnl3-devel net-snmp-devel2.安装keepalived yum install -y keepalived3.更新配置 # 配置文件地址&#xff1a;/etc/keepalived/keepalived.conf # 1.主节点 vrrp_instance VI_1 {state MASTER # 状态只有MASTER和BA…

关于解决“文件已被另一程序打开无法删除文件”的方法

解决方法 找了几个解决方法&#xff1a; 用管理员模式打开cmd&#xff0c;输入rd /s /f 文件路径删除文件&#xff0c;无效。结果出现拒绝访问。打开电脑安全模式&#xff0c;无效。用管理者模式启动cmd&#xff0c;使用CHKDSK 修复命令&#xff1a;chkdsk D: /f /r /x。然后…

Word参考文献交叉引用

前言 Word自带交叉引用功能&#xff0c;可在正文位置引用文档内自动编号的段落&#xff0c;同时创建超链接&#xff0c;适用于参考文献的引用。使用此方法对参考文献进行引用后&#xff0c;当参考文献的编号发生变化时&#xff0c;只需要更新域即可与正文中的引用相对应。下文…

2024Datawhale AI夏令营---Inclusion・The Global Multimedia Deepfake Detection--学习笔记

赛题背景&#xff1a; 其实总结起来就是一句话&#xff0c;这个项目是基于目前的深度伪装技术&#xff0c;就是通过大量人脸的原数据集进行模型训练之后&#xff0c;能够生成伪造的人脸视频。这项目就是教我们如何去实现这个DeepFake技术。 Task1:了解Deepfake和跑通baseline …

YOLOv8目标跟踪deepsort

原文:YOLOv8目标跟踪deepsort - 知乎 (zhihu.com) 一、YOLOV8 tracking 参考文章: Ctrl CV:YoloV5 + DeepSort1 赞同 0 评论文章 二、行人重识别(ReID) ——Market-1501 数据集 2.1、数据集简介 Market-1501 数据集在清华大学校园中采集,夏天拍摄,在 2015 年构建并…

【PyTorch快速入门教程】02 Jupyter notebook安装及配置

文章目录 1 安装 Jupyter notebook2 安装 ipykernel3 更改 jupyter 默认配置3.1 生成配置文件3.2 关键配置信息 4 扩展插件推荐参考 1 安装 Jupyter notebook 一行命令搞定 python -m pip install jupyter 现在就可以打开Jupyter notebook来运行python啦。 jupyter notebook…

去除重复字母

题目链接 去除重复字母 题目描述 注意点 s 由小写英文字母组成1 < s.length < 10^4需保证 返回结果的字典序最小&#xff08;要求不能打乱其他字符的相对位置&#xff09; 解答思路 本题与移掉 K 位数字类似&#xff0c;需要注意的是&#xff0c;并不是每个字母都能…

Windows安装Pycharm及汉化教程

在安装好了Python之后呢&#xff0c;我们需要更方便的进行编写代码&#xff0c;使用Python自带的IDLE和命令行是不太友好的。 那么有没有一款免费好用的写代码工具呢&#xff1f;答案是有的&#xff01; PyCharm 是由 JetBrains 打造的一款 Python IDE&#xff0c;提供代码分析…

SQL常用数据过滤---IN操作符

在SQL中&#xff0c;IN操作符常用于过滤数据&#xff0c;允许在WHERE子句中指定多个可能的值。如果列中的值匹配IN操作符后面括号中的任何一个值&#xff0c;那么该行就会被选中。 以下是使用IN操作符的基本语法&#xff1a; SELECT column1, column2, ... FROM table_name WH…

本地多模态看图说话-llava

其中图片为bast64转码&#xff0c;方便json序列化。 其中模型llava为本地ollama运行的模型&#xff0c;如&#xff1a;ollama run llava 还有其它的模型如&#xff1a;llava-phi3&#xff0c;通过phi3微调过的版本。 实际测试下来&#xff0c;发现本地多模型的性能不佳&…

怎么将几个pdf合成为一个pdf?几个合并PDF文件的方法

怎么将几个pdf合成为一个pdf&#xff1f;当需要将多个PDF文件合并成一个单一的PDF文件时&#xff0c;这种操作不仅能够提高文件管理的效率&#xff0c;还能使得相关文档更加集中和易于访问。合并PDF的过程不仅仅是简单地将几个文件结合在一起&#xff0c;更是将信息整合成一个更…

遥感降水评估

遥感降水可以作为地面雨量计和雷达观测降水的补充&#xff0c;在偏远山区和缺资料地区更为适合。目前&#xff0c;学界有多种降水数据&#xff0c;每一种降水数据都有独特的方法制作。因此&#xff0c;在使用前需要对这些降水的可靠性进行评估。在获得误差基础上&#xff0c;方…

Apollo 常见math库学习

1 Vec2d 向量表示point vec2d.h #pragma once // 定义二维向量类 #include <cmath> #include <string>/*** namespace apollo::common::math* brief apollo::common::math*/ namespace apollo { namespace common { namespace math {constexpr double kMathEpsil…

刷题日志——模拟专题(python实现)

模拟往往不需要设计太多的算法&#xff0c;而是要按照题目的要求尽可能用代码表示出题目的旨意。 以下是蓝桥杯官网模拟专题的选题&#xff0c;大多数比较基础&#xff0c;但是十分适合新手入门&#xff1a; 一. 可链接在线OJ题 饮料换购图像模糊螺旋矩阵冰雹数回文日期长草最…

华为以客户为中心的战略

2005年&#xff0c;伴随着国际化步伐的加快&#xff0c;华为重新梳理了自己的愿景、使命和发展战略&#xff0c;提出了以客户为中心的战略定位&#xff1a; 为客户服务是华为存在的唯一理由&#xff1b;客户需求是华为发展的原动力。质量好、服务好、运作成本低&#xff0c;优…

mac安装win10到外接固态硬盘

1、制作win10系统 1.1 下载 winToUSB&#xff0c;打开后选择第一个 1.2 选择本地下载镜像&#xff0c; 我用的分区方案是适用于UEFI的GPT模式 1.3 点右下角执行&#xff0c;等待执行完成即可 2、mac系统下载win驱动 2.1 comman空格 搜索启动转换助理&#xff0c;打开后选择…

前端框架入门之Vue _el和data的两种写法 分析MVVM模型

目录 _el与data的两种写法 MVVM模型 _el与data的两种写法 查看vue的实例对象 我们在这边注释掉了el属性 这样的话div容器就绑定不了vue实例 当我们可以在这里写一个定时任务 然后再回头指定 这个mount有挂载的意思 就是把容器对象交给vue实例后 去给他挂载指定的对象 &…

深入解析HTTPS与HTTP

在当今数字化时代&#xff0c;网络安全已成为社会各界关注的焦点。随着互联网技术的飞速发展&#xff0c;个人和企业的数据安全问题日益凸显。在此背景下&#xff0c;HTTPS作为一种更加安全的通信协议&#xff0c;逐渐取代了传统的HTTP协议&#xff0c;成为保护网络安全的重要屏…