← 返回文档中心

数据库导入驱动程序

数据库导入驱动程序旨在从第三方数据库读取当前数据,以及使用命令写入第三方数据库。支持的 DBMS 是 Microsoft SQL ...

模块适用版本V6.4更新时间2026-04-28负责人ScadaDoc

数据库导入驱动程序

概述

数据库导入驱动程序旨在从第三方数据库读取当前数据,以及使用命令写入第三方数据库。支持的 DBMS 包括 Microsoft SQL Server、Oracle、PostgreSQL 和 MySQL。该驱动程序包含在RapidSCADA 发行版中,不需要单独安装。

配置

创建新的通信线路和设备数据库导入使用调用的向导键入按钮。通讯线负责连接到一个数据库。线路的通信信道类型是不明确的。下图显示了项目浏览器中的通信线路节点。

Communication line node

打开创建的设备的属性。设备设置指定接收标签值并通过 SQL 查询发送命令。

Connection options

假设用作驱动程序信息源的数据库已经存在并且包含必要的表。有关数据库连接选项的信息,请联系数据库管理员。

下图显示了获取设备标签值的查询参数。

Query parameters
Query parameters

标签字段中,输入设备标签代码。每一行包含一个标签的代码。这SQL字段包含查询文本。如果单行结果选中复选框(查询 1),查询应返回一行,其中每个字段都包含一个标记值。如果未选中该复选框(查询 2),则查询应返回一组行,每行包含标签代码和值。对于第二种情况,查询结果必须包含codeval列。

Command parameters

由于命令支持,驱动程序可以通过操作员发送的命令或自动将信息写入数据库。这命令码必须与发送命令的通道的标签代码相匹配。在SQL查询文本中,命令的值和数据可以通过@cmdVal@cmdData参数。

配置设备属性后,使用由设备调用的向导在配置数据库中创建通道按钮。

如果配置正确,设备数据页面将显示获取的值。

Device data

SQL脚本

PostgreSQL 的示例脚本:

CREATE SCHEMA IF NOT EXISTS drv_db_import
    AUTHORIZATION postgres;

CREATE TABLE IF NOT EXISTS drv_db_import.table1
(
    id integer NOT NULL,
    val1 double precision,
    val2 character varying,
    val3 timestamp with time zone,
    CONSTRAINT table1_pkey PRIMARY KEY (id)
);

CREATE TABLE IF NOT EXISTS drv_db_import.table2
(
    id integer NOT NULL,
    code character varying,
    val double precision,
    CONSTRAINT table2_pkey PRIMARY KEY (id)
);

CREATE TABLE IF NOT EXISTS drv_db_import.table_out
(
    create_time time with time zone DEFAULT now(),
    cmd_val double precision,
    cmd_data bytea
);

-- Query 1
SELECT val1, val2, val3 FROM drv_db_import.table1 LIMIT 1

-- Query 2
SELECT code, val FROM drv_db_import.table2

-- Command
INSERT INTO drv_db_import.table_out (cmd_val, cmd_data) VALUES (@cmdVal, @cmdData)