主题
数据库接入
直连通道支持从第三方数据库读取设备数据,不支持向数据库中写入数据。
支持的数据库驱动如下: MySQL、SQL Server、PostgreSQL、Oracel、ClickHouse。
接入第三方数据库数据,数据库提供方需要满足以下要求:
- 指定一个数据表用于读取测点值
- 数据表中必须有一个字段与设备对应
- 数据表中的可以有一个时间戳字段对应数据更新时间
- 除设备字段和时间戳字段外,其它字段可以用于对应测点值(只需要确保字段名与测点标识或测点地址一致)
- 数据表的数据更新方式支持以下两种:
- “INSERT”方式更新数据:每次更新测点值都会插入一条新记录,该方式必须提供时间戳字段。
- “UPDATE”方式更新数据:每次更新测点值不插入新记录,只更新已有记录。
以下为一个 INSERT 方式更新数据的表字段示例:
| 名称 | 数据类型 | 说明 |
|---|---|---|
| id | bigint | 主键,自增 |
| device_id | varchar(30) | 点表中的设备地址 |
| updated_at | datetime | 时间戳,INSERT 方式必须包含时间戳字段。 |
| ia | double | 测点值,对应的点位地址为 ia |
| ib | double | 测点值,对应的点位地址为 ib |
| ic | double | 测点值,对应的点位地址为 ic |
以下为一个 UPDATE 方式更新数据的表字段示例:
| 名称 | 数据类型 | 说明 |
|---|---|---|
| id | bigint | 主键,自增 |
| device_id | varchar(30) | 点表中的设备地址 |
| ia | double | 测点值,对应的点位地址为 ia |
| ib | double | 测点值,对应的点位地址为 ib |
| ic | double | 测点值,对应的点位地址为 ic |
NOTE
本驱动不支持向数据库中写入数据,如果有指令下要需求,请采用其它方式。
通道设置
参数说明:
| 名称 | 必填 | 说明 |
|---|---|---|
| 数据库类型 | 是 | 选择数据库驱动。 |
| 主机地址 | 是 | - |
| 端口 | 是 | - |
| 用户名 | 否 | - |
| 密码 | 否 | - |
| Schema | 否 | 当数据库驱动为 PostgreSQL 时有效,默认为 public。 |
| Database | 是 | 数据库名称。 |
| Table | 是 | 数据表名称。 |
| 设备字段名 | 否 | 对应设备地址或设备标识。 |
| 时间戳字段名 | 否 | 当数据表为“INSERT”方式更新数据时,不可为空 |
| 扫描间隔 | 是 | 扫描数据库的周期,单位秒。 |
点位寻址
点位寻址方式,与是否定义了 设备字段 有关。
有设备字段
设备地址 对应 设备字段名,**点位地址 ** 对应 数据字段名。
当设备地址为空时,由 设备标识 代替设备地址。
当点位地址为空时,由 点位标识 代替点位地址。
示例
字段定义:
| 字段名称 | 数据类型 | 说明 |
|---|---|---|
| id | bigint | 主键,自增 |
| device_id | varchar(30) | 设备标识或地址 |
| updated_at | datetime | 时间戳 |
| ia | double | 测点值,对应的点位地址为 ia |
| ib | double | 测点值,对应的点位地址为 ib |
| ic | double | 测点值,对应的点位地址为 ic |
数据表:
| ID | device_ID | updated_at | ia | ib | ic |
|---|---|---|---|---|---|
| 1 | meter_01 | 2025-11-11 00:00:00 | 5 | 5 | 5 |
| 2 | meter_02 | 2025-11-11 00:00:00 | 5 | 5 | 5 |
| 3 | meter_03 | 2025-11-11 00:00:00 | 5 | 5 | 5 |
点表:
| 测点类型 | 设备地址 | 点位地址 |
|---|---|---|
| 浮点型 | meter_01 | ia |
| 浮点型 | meter_01 | ib |
| 浮点型 | meter_01 | ic |
| 浮点型 | meter_02 | ia |
| 浮点型 | meter_02 | ib |
| 浮点型 | meter_02 | ic |
| 浮点型 | meter_03 | ia |
| 浮点型 | meter_03 | ib |
| 浮点型 | meter_03 | ic |
无设备字段
设备地址 不需要填,可以忽略。
**点位地址 ** 对应 数据字段名。
当点位地址为空时,由 点位标识 代替点位地址。
示例
字段定义:
| 字段名称 | 数据类型 | 说明 |
|---|---|---|
| id | bigint | 主键,自增 |
| updated_at | datetime | 时间戳 |
| meter_01_ia | double | meter_01 ia 测点值 |
| meter_01_ib | double | meter_01 ib 测点值 |
| meter_01_ic | double | meter_01 ic 测点值 |
| meter_02_ia | double | meter_02 ia 测点值 |
| meter_02_ib | double | meter_02 ib 测点值 |
| meter_02_ic | double | meter_02 ic 测点值 |
数据表:
| ID | updated_at | meter_01_ia | meter_01_ib | meter_01_ic | meter_02_ia | meter_02_ib | meter_02_ic |
|---|---|---|---|---|---|---|---|
| 1 | 2025-11-11 00:00:00 | 5 | 5 | 5 | 5 | 5 | 5 |
点表:
| 测点类型 | 设备地址 | 点位地址 |
|---|---|---|
| 浮点型 | meter_01_ia | |
| 浮点型 | meter_01_ib | |
| 浮点型 | meter_01_ic | |
| 浮点型 | meter_02_ia | |
| 浮点型 | meter_02_ib | |
| 浮点型 | meter_02_ic |