Node-RED 连接 MySQL 数据库:配置、建表与数据插入指南

江岸
江岸
发布时间:2026-10-16 | 4人浏览过
原创

在 Node-RED 中操作 MySQL 数据库,核心在于正确安装 MySQL 节点并配置连接信息。通过组合 inject、function 和 mysql 节点,可以灵活执行创建数据库、数据表以及插入记录等 SQL 操作,实现低代码环境下的数据持久化管理。

安装 Node-RED MySQL 节点

若环境中尚未包含 MySQL 支持,需先在 Node-RED 编辑器中安装对应节点。

第1步:进入节点管理

  1. 点击右上角的 菜单 → 管理调色板(Manage Palette);
  2. 切换到 安装 标签页;
  3. 在搜索框输入 node-red-node-mysql 并点击安装。

配置数据库连接参数

双击画布上的 mysql 节点进入配置界面,建立与本地或远程 MySQL 服务器的连接通道。

第2步:新建连接

  1. 在配置窗口点击 New 按钮添加新连接;
  2. 填写 Host(默认通常为 localhost)、端口、用户名(如 root)及密码;
  3. 在 Name 字段定义该连接的标识符,例如 Local_MySQL;
  4. 保存配置后,该节点即可向后续节点提供数据库句柄。

执行 SQL 基础操作示例

以下流程展示如何利用 inject 触发、function 构建 SQL 语句、mysql 执行以及 debug 查看结果的标准链路。所有操作均通过发送消息对象给 mysql 节点完成。

第1步:创建数据库

目的:初始化一个名为 Data_test 的数据库。

// Function 节点代码:构建创建数据库的 SQL
var sql = "CREATE DATABASE Data_test;";
var msgObj = { topic: sql };
return msgObj;

完成配置后,点击 inject 节点左侧的灰色方块触发流程。执行成功后,可在 Navicat 等客户端刷新查看到新建的数据库。

第2步:创建数据表

目的:在 Data_test 数据库中创建一个包含指定字段的表格。

// Function 节点代码:构建创建表的 SQL
var sql = "CREATE TABLE IF NOT EXISTS `student_info` (   `id` INT UNSIGNED AUTO_INCREMENT,   `name` VARCHAR(100) NOT NULL,   `age` INT,   PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;";
var msgObj = { topic: sql };
return msgObj;

注意:原稿中的 runoob_tbl 示例较为通用,此处为了连贯性调整为与下文一致的 student_info 表结构。同样点击 inject 触发,确认表结构已生成。

第3步:插入数据记录

目的:向表中添加学生信息。这里提供两种常见的数据注入方式。

方法一:直接拼接 SQL 字符串

// 适用于固定数据的快速测试
var sql = "INSERT INTO student_info(name, age) VALUES ('wangwu', 11);";
var msgObj = { topic: sql };
return msgObj;

方法二:使用 util.format 格式化动态参数

此方法适合需要变量传入的场景,避免手动处理引号问题。

// 适用于动态参数的场景
var sql = "INSERT INTO student_info(name, age) VALUES (?, ?);";
// 利用 util 模块处理格式化,更稳健
var msgObj = {
    topic: sql,
    params: ["lisi", 12]
};
return msgObj;

在实际的高级用法中,也可以在 inject 节点中选择 JSON 类型作为 Payload,然后在 function 节点中通过 msg.payload.name 解析对象属性来构造 SQL,这样能更好地应对前端表单或 API 传来的结构化数据。

以上就是 Node-RED 连接 MySQL 数据库并执行基础操作的详细内容,更多关于 Node-RED 数据库集成与自动化脚本开发的资料请关注本站其它相关文章!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表