Skip to content
云腾五洲 云腾五洲
云腾五洲
  • 产品
    • IoT软件产品
      • ThingsKit「物联网平台」
      IoT硬件产品
      • T2000 云腾边缘计算盒子「内置AIoT平台」
      • EG8200mini 云腾边缘数采网关「高性价比」
      MORE
      SE

      服务

      技术服务包

      IN

      集成

      协议、厂商、合作

      TB

      淘宝店

      淘宝旗舰店

      ALL

      查看全部产品

      ALL PRODUCTS

  • 方案
    • 1

      水肥一体化控制解决方案

      水肥一体机控制、气象监测

      4

      城市老旧危房监测解决方案

      监测 沉降、偏移、裂缝等

      6

      EMS能源管理系统解决方案

      仪表台账、在线监测、能效分析

      9

      SMS安全生产管理系统解决方案

      安全管理、巡检管理、应急管理

      2

      智慧园区&楼宇自控解决方案

      安防、通行、环境、楼宇自控等

      5

      ERP系统解决方案

      零售管理、采购管理、销售管理

      7

      专业MES系统解决方案

      生产管理、数据大屏、排班管理

      10

      柔性产线及调度系统解决方案

      设备管理、刀具管理、生产管理

      3

      垃圾焚烧监控解决方案

      压力、温度、组态可视化

      6

      EAM设备管理系统解决方案

      全生命周期设备管理平台

      8

      小微MES系统解决方案

      1-2周极速上线、生产管理、手机端

      11

      复合材料生产系统解决方案

      研发工艺、生产管理、设备管理

      MORE
      CU

      方案定制

      基于AIoT产品体系的方案定制

      ALL

      查看所有方案

      ALL SOLUTIONS

  • 资源
    • 文档

      Docs

      博客

      Blogs

      下载

      Download

      视频

      Videos

      常见问题

      FAQ

  • 公司
    • 关于我们

      About

      新闻动态

      News

      联系我们

      Contact

      招贤纳士

      Careers

IoT商店 →

MySQL数据库—NodeRED连接示例

HomeMySQL数据库—NodeRED连接示例

搜索一下

ThingsKit物联网平台

20
  • 语雀文档
  • ThingsKit物联网平台简介
  • 在线体验地址
  • 入门指南
    • 准备工作
    • 设备连接
    • 数据上报
    • 命令下发
  • 进阶指南
    • 支持哪些设备接入物联网平台
    • 各种协议接入ThingsKit平台方案
    • 设备MQTT接入物联网平台
    • 网关MQTT接入物联网平台
    • 设备HTTP接入物联网平台
    • 设备TCP接入物联网平台
    • 设备UDP接入物联网平台
    • 设备CoAP接入物联网平台
    • 物联网平台用户角色权限
    • ThingsKit物联网平台场景联动使用教程
    • 在ThingsKit IoT平台制作一个大屏
    • 在ThingsKit IoT平台制作一个组态模板
    • 在ThingsKit IoT平台制作一个组态

云腾边缘计算盒子/一体机 x AIoTedge

10
  • 语雀文档
  • 边缘盒子/一体机简介
  • 在线体验地址
  • Node-RED使用手册
    • Node-RED简介
    • 入门指南
      • 了解编程界面
      • 创建第一个流程【模拟数据】
      • 创建第二流程【西门子PLC读写】
    • 最佳实践
      • PostgreSQL数据库—NodeRED连接示例
      • MySQL数据库—NodeRED连接示例
      • 第三方平台API接入示例
View Categories
  • Home
  • 文档
  • 云腾边缘计算盒子/一体机 x AIoTedge
  • Node-RED使用手册
  • 最佳实践
  • MySQL数据库—NodeRED连接示例

MySQL数据库—NodeRED连接示例

提示💡:下面所有操作,都是已经安装好mysql数据库的情况下操作;具体,如何安装数据库,这里不说明。

1、准备工作 #

1-1、创建数据库名【nodered】,字符集【utf8】; #

1创建数据库
2数据库名为nodered

1-2、执行表结构文件 #

3运行SQL文件也可以自己编写SQL

下面为示例数据库的表结构SQL代码:

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
​
-- ----------------------------
-- Table structure for devicedata
-- ----------------------------
DROP TABLE IF EXISTS `devicedata`;
CREATE TABLE `devicedata`  (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`attributeName` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '属性名称',
`attributeValue` double(10, 2) NULL DEFAULT NULL COMMENT '数据点值',
`createTime` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建时间',
`tsLong` bigint(255) NULL DEFAULT NULL COMMENT 'TS时间戳',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '存储时序数据' ROW_FORMAT = Dynamic;
​
SET FOREIGN_KEY_CHECKS = 1;

2、MySQL数据库常规操作 #

2-1、示例代码 #

[{"id":"4660fa22b87d8d64","type":"function","z":"cb5f1a5e643cfd9e","name":"INSERT Data【插入数据】","func":"\nvar datetime = formatDateTime();//创建日期格式的时间\nvar tsLong = new Date().getTime();\n\nvar minBound = 15, maxBound = 25;//创建温度模拟数据15~25\nvar randomNum = Math.random() * (maxBound - minBound) + minBound;\nvar wendu = randomNum.toFixed(2);\n\nmsg.topic = \"INSERT INTO deviceData (attributeName,attributeValue,createTime,tsLong) VALUES (?,?,?,?)\";\nmsg.payload = [\"温度值\", wendu, datetime, tsLong];\nreturn msg;\n\n//得到当前日期 【YYYY-MM-DD HH:mm:ss】\nfunction formatDateTime() {\n    var now = new Date();\n    var year = now.getFullYear(); // 获取年份\n    var month = now.getMonth() + 1; // 获取月份,月份从0开始,所以需要+1\n    var day = now.getDate(); // 获取日期\n    var hours = now.getHours(); // 获取小时\n    var minutes = now.getMinutes(); // 获取分钟\n    var seconds = now.getSeconds(); // 获取秒数\n\n    // 将单个数字格式化为两位数(例如,1变为01)\n    month = month < 10 ? '0' + month : month;\n    day = day < 10 ? '0' + day : day;\n    hours = hours < 10 ? '0' + hours : hours;\n    minutes = minutes < 10 ? '0' + minutes : minutes;\n    seconds = seconds < 10 ? '0' + seconds : seconds;\n\n    // 拼接成最终的字符串\n    var dateTimeStr = year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds;\n    return dateTimeStr;\n}\n\n//msg.topic = \"INSERT INTO user (name,address,year) VALUES (?,?,?)\";\n//msg.payload = [ \"test老大\",\"成都高新区\",\"2021-10-28\"];\n//return msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":280,"y":380,"wires":[["1d1af8373ab6c326","c454653a7d28bfbe"]]},{"id":"026e258025329cde","type":"inject","z":"cb5f1a5e643cfd9e","name":"Go","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":"","topic":"","payloadType":"date","x":90,"y":380,"wires":[["4660fa22b87d8d64"]]},{"id":"402e02dd0e5b188f","type":"debug","z":"cb5f1a5e643cfd9e","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":690,"y":500,"wires":[]},{"id":"26dbb51b82fc931c","type":"inject","z":"cb5f1a5e643cfd9e","name":"Go","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":"","topic":"","payloadType":"date","x":90,"y":440,"wires":[["6ea9847db36c1e83"]]},{"id":"6ea9847db36c1e83","type":"function","z":"cb5f1a5e643cfd9e","name":"Update Data【更新数据】","func":"msg.topic = \"Update deviceData Set attributeValue = ? where id=?\";\nmsg.payload=['22.55','4']\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":270,"y":440,"wires":[["1d1af8373ab6c326"]]},{"id":"2ed4f22e8e973be0","type":"function","z":"cb5f1a5e643cfd9e","name":"Delete Data【删除数据】","func":"msg.topic = \"Delete From deviceData where id = ?\";\nmsg.payload = [\"4\"];\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":270,"y":580,"wires":[["1d1af8373ab6c326"]]},{"id":"2b7a45f6001c3eb5","type":"inject","z":"cb5f1a5e643cfd9e","name":"Go","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":"","topic":"","payloadType":"date","x":90,"y":580,"wires":[["2ed4f22e8e973be0"]]},{"id":"71f48d84444e52ed","type":"inject","z":"cb5f1a5e643cfd9e","name":"Go","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":"","topic":"","payload":"warehouse","payloadType":"str","x":90,"y":520,"wires":[["244bfcbfc5d9355c"]]},{"id":"244bfcbfc5d9355c","type":"function","z":"cb5f1a5e643cfd9e","name":"SELECT Data【查询数据】","func":"msg.topic = \"SELECT * FROM deviceData  order by tsLong desc LIMIT 10;\";\nreturn msg;","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":280,"y":520,"wires":[["1d1af8373ab6c326"]]},{"id":"f9e725cdeb9db454","type":"comment","z":"cb5f1a5e643cfd9e","name":"mysql常规操作:使用时,注意配置好的数据库地址\\用户名\\密码","info":"","x":250,"y":320,"wires":[]},{"id":"a8144cc72bc2c57f","type":"comment","z":"cb5f1a5e643cfd9e","name":"mysql模拟测试-双击打开查看【操作表的结构】","info":"-- ----------------------------\n-- Table structure for devicedata\n-- ----------------------------\nDROP TABLE IF EXISTS `devicedata`;\nCREATE TABLE `devicedata`  (\n  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',\n  `attributeName` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '属性名称',\n  `attributeValue` double(10, 2) NULL DEFAULT NULL COMMENT '数据点值',\n  `createTime` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '创建时间',\n  `tsLong` bigint(255) NULL DEFAULT NULL COMMENT 'TS时间戳',\n  PRIMARY KEY (`id`) USING BTREE\n) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '存储时序数据' ROW_FORMAT = Dynamic;","x":200,"y":260,"wires":[]},{"id":"1d1af8373ab6c326","type":"mysql","z":"cb5f1a5e643cfd9e","mydb":"b2e1fbf20d178b80","name":"mysql数据库操作","x":510,"y":500,"wires":[["402e02dd0e5b188f"]]},{"id":"c454653a7d28bfbe","type":"debug","z":"cb5f1a5e643cfd9e","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":550,"y":380,"wires":[]},{"id":"f627c7d851c92678","type":"comment","z":"cb5f1a5e643cfd9e","name":"双击打开查看【官方使用文档】","info":"官方使用文档:\nhttps://yunteng.yuque.com/to2an3/rrd8yw/vnyz2422t47m2gk7","x":150,"y":200,"wires":[]},{"id":"b2e1fbf20d178b80","type":"MySQLdatabase","name":"mysql数据库","host":"192.168.1.31","port":"3306","db":"nodered","tz":"","charset":"UTF8"}]

2-2、数据节点配置 #

双击打开【mysql数据库操作】节点;

PS:注意,这个数据库节点下面的标签,如果是绿色,代表连接成功。如果不成功说明你的配置有问题。

4数据库节点配置

单击修改配置

5修改DB配置

填写对应的主机、端口、用户名、密码、数据库以及字符集。

6填写数据库信息

2-3、演示【插入Insert】 #

单击执行语句,调试窗口输出结果,再到数据库表,刷新,查看结果

7插入数据

双击(INSERT Data【插入数据】)查看【function】中的代码,代码由模拟数据和核心语句两部分构成。

8构建模拟数据

2-4、演示【更新Update】 #

利用update更新语句,将下图中【ID=4】这条记录原来的【20.59】改为【22.55】;

这里你根据你的数据情况决定ID值,因为这个ID是自动生成的。

9更新数据

单击执行语句,刷新数据表,查看结果,如下:

10查看结果

2-5、演示【查询Select】 #

单击打开调试节点,再单击执行语句节点,最后在调试窗口查看结果

11查询数据

2-6、演示【删除Delete】 #

单击执行语句节点,可以看到调试窗口有运行【delete from deviceData……】这类语句,说明执行成功;

再去数据表中,刷新一下数据。

12删除数据
更新 2025年1月20日
Node-RED
PostgreSQL数据库—NodeRED连接示例
大纲
  • 1、准备工作
    • 1-1、创建数据库名【nodered】,字符集【utf8】;
    • 1-2、执行表结构文件
  • 2、MySQL数据库常规操作
    • 2-1、示例代码
    • 2-2、数据节点配置
    • 2-3、演示【插入Insert】
    • 2-4、演示【更新Update】
    • 2-5、演示【查询Select】
    • 2-6、演示【删除Delete】
看过文档后,觉得怎么样?
  • Happy
  • 常规
  • Sad

国内领先的智能物联产品和解决方案提供商

客服微信
云腾五洲公众号
云腾五洲·公众号
云腾五洲视频号
云腾五洲·视频号

产品

  • ThingsKit
  • 云腾T2000
  • IoT商店

开发者

  • 文档
  • 语雀文档
  • 视频
  • 博客
  • 资源下载
  • 常见问题

公司

  • 关于我们
  • 联系我们
  • 新闻资讯
  • 招贤纳士
+友情链接(请联系客服)
  • 物联网平台
  • 边缘计算平台
  • ThingsKit IoT平台
  • 网站地图

@2018-2025 云腾五洲 All rights reserved

蜀ICP备2020033344号-8 已公安备案 川公网安备51019002007627号