要想实现node-red连接数据库(mysql),首先电脑需要在电脑中下载mysql软件,并安装navicat便于操作,这里默认已经安装完毕。
node-red中控件下载
在node-red中需要先下载所需要的mysql控件:
- 首先在左上角点击设置,并找到节点管理 ;
- 在节点管理中点击安装;
- 在安装界面的查询窗口输入node-red-node-mysql 控件,查询后选择下载,等待下载完成;
mysql控件使用
在本地新建连接root,并设置database为本地连接名称
节点信息
定义对接收到的消息进行处理的javascript代码(函数的主体)。
输入消息在名为msg的javascript对象中传递。
通常,msg.topic必须保留对数据库的查询,然后返回结果msg.payload属性中。
该函数一般会返回一个消息对象(或多个消息对象),但也可以为了停止流而什么都不返回。 创建数据库
需要使用到的节点有inject、function、mysql、debug。
//function节点函数编写:创建数据库data_testvar sql = "create database data_test;";var topic = {"topic":sql};return topic;
完成后点击inject节点的小方块即可完成数据库data_test的新建,并可在navicat中进行刷新查看。
创建数据表table_name
需要使用到的节点有inject、function、mysql、debug
//function节点函数编写:创建数据表table_namevar sql = "create table if not exists `runoob_tbl`( `runoob_id` int unsigned auto_increment, `runoob_title` varchar(100) not null, `runoob_author` varchar(40) not null, `submission_date` date, primary key ( `runoob_id` ))engine=innodb default charset=utf8;";var topic = {"topic":sql};return topic;
完成后点击inject节点的小方块即可完成数据库表table_name的新建,并可在navicat中进行刷新查看。
添加学生信息
添加学生信息前需要在navicat中新建表格student,并包含有name、age、grade、class_name
需要使用到的节点有inject、function、mysql、debug
方法一
//function节点函数编写:添加学生信息 var student="insert into student(name, age,grade, class_num) values ('wangwu', 11, 4, '3')"; var newmysqldata = { "topic": student } return newmysqldata ;
方法二
//function节点函数编写:添加学生信息 var student="insert into student(name, age,grade, class_num) values ('%s', %d, %d, '%s')"; var newmysqldata = { "topic": util.format(student, "lisi",12,6, "1") } return newmysqldata ;
其中方法二中的学生信息也可使用在inject节点中选择 {}json并输入学生信息进行传输,在function中以 msg.payload.name的形式进行解析。
完成后点击inject节点的小方块即可完成学生信息的添加,并可在navicat中进行刷新查看。
到此这篇关于node-red实现mysql数据库连接的文章就介绍到这了,更多相关mysql数据库连接内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!