使用云数据库MySQL节点可将数据存入云数据库RDS MySQL版数据表中,对数据表中的数据进行增、删、改、查操作。

前提条件

  • 已购买云数据库RDS MySQL版实例。您可前往云数据库RDS MySQL版产品页面了解购买详情。
  • 已创建数据库和数据表。具体操作,请参见RDS MySQL数据库
  • 已将0.0.0.0/0添加到RDS MySQL实例的白名单。具体操作,请参见设置IP白名单
    说明 0.0.0.0/0表示允许任何设备访问RDS实例,请谨慎使用。
  • 已完成项目和业务服务的创建。具体操作,请参见普通项目创建业务服务

节点配置

在业务逻辑编辑页面的节点中,选择对应功能节点配置业务流,云数据库MySQL配置页面如下图所示。

云数据库MySQL
配置项说明
节点名称设置节点名称。支持中文、英文字母、数字和下划线(_),长度不超过30个字符。
用户名填入RDS实例的用户账号。可在RDS控制台,实例的账号管理页,查看实例的账号信息。

关于RDS MySQL的更多信息,请参见使用流程

密码填入登录RDS实例的密码。
连接地址填入实例的外网地址。可在RDS控制台,实例的数据库连接页,查看实例的外网地址。数据库信息查看示例,请参见以下云数据库RDS MySQL实例基本信息示例截图。
说明 若您当前阿里云账号和RDS同账号同地域同VPC时,您也可以使用内网地址连接数据库。
数据库名填入数据库名称。可在RDS控制台,实例的数据库管理页查看。
端口号填入实例的外网端口号。可在RDS控制台,实例的数据库连接页,查看实例的外网端口。
操作类型可选择:
  • 插入:在数据库中插入数据。
  • 查询:查询数据库中的数据。
  • 删除:删除数据库中的数据。
  • 更新:更新数据库中的数据。
参数根据不同操作类型,需输入不同的参数。 具体参数说明,请参见下文参数
说明
  • 云数据库MySQL节点不支持插入中文参数名。
  • 云数据库MySQL节点插入设备的状态,statusCode的数字含义如下所示,您可根据数字含义进行中文转换之后再插入数据库。
    • 0:未激活
    • 1:在线
    • 3:离线
    • 8:禁用

查看云数据库RDS MySQL实例基本信息。

实例信息

参数

参数中可以使用变量,IoT Studio内置了如下全局变量:

  • payload,来自上个节点的输出数据。通过payload.对象中的某个key来访问指定key的数据。

    例如payload.productKey:调用上一个节点输出内容{productKey: '值'}中的值。

  • query,来自输入节点的数据。例如,HTTP请求节点的入参,设备触发节点的设备数据。通过query.参数名来访问指定数据。

    例如query.deviceName:调用API请求节点中入参deviceName的值。

  • node,来自指定节点(node.节点ID)的输出数据。通过node.节点ID.节点输出对象中的某个key来访问指定key的数据。

    例如node.node_39***0.pageNum:调用节点node_39***0输出中pageNum的值。

以下根据不同的操作类型,例举参数的结构和示例。

  • 插入
    {
        "table": "",  //数据表名称
        "rows": [{}]  //插入的数据内容
    }

    示例

    {
        "table": "base_info",
        "rows": [
            {
                "id": "{{payload.id}}",
                "user": "{{payload.user}}",
                "ext": "{{payload.ext}}",
                "msg": "{{payload.msg}}"
            }
        ]
    }
  • 查询
    {
        "table": "",        //数据表名称
        "condition": {      //查询条件
            "where": {},    //查询位置
            "columns": [],  //查询内容
            "orders": []    //排序
        }
    }

    示例

    {
        "table": "base_info",
        "condition": {
            "where": {"id": "{{query.id}}"},
            "columns": ["id", "user", "ext"],
            "orders": [["id", "desc"]]       
        }
    }
  • 删除
    {
        "table": "",      //数据表名称
        "condition": {    //删除条件
        }
    }

    示例

    {
        "table": "base_info",
        "condition": {
        "id": "{{node.node_78***40.id}}"
        }
    }
  • 更新
    {
        "table": "",          //数据表名称
        "row": {},            //更新的键值对
        "condition": {        //更新条件
            "where": {},      //更新位置
            "columns": []     //更新内容
        }
    }

    示例

    {
        "table": "base_info",
        "row": {"user": "xxx", "ext": "yyy"},
        "condition": {
            "where": {"id": "{{query.id}}"},
            "columns": ["user", "ext"]       
        }
    }

节点输出

云数据库RDS MySQL版的操作结果作为节点输出。