创建一个用户定义的查询

<< 点击显示目录 >>

主页  mappServices帮助手册 > mapp Database: 连接数据库  > 使用案例 >

创建一个用户定义的查询

mapp Services V5.16

要求

一台机器在MySQL数据库中存储生产数据。生产数据被分为两个区域。轮班数据和产品数据。

这些数据被保存在MySQL数据库的2个不同的表中。

 

mpdatabaseusecase_2_machinepic

 

轮班数据包含轮班的开始和结束时间,以及生产的产品的平均质量。创建的产品类型是由产品ID定义的。

一个产品的数据、长度、高度和宽度被存储在其产品ID和产品数据中。

由于质量测试,应该可以通过查询获得班次和产品数据。产品的质量和长度以及班次的开始时间可以通过产品ID来确定。这是为了检查产品的长度是否会影响质量。

数据库

使用了MySQL数据库系统。有"班次"和"产品"表。

表"班次"包含班次的开始和结束时间,以及在这段时间内生产的产品的平均质量和ID。

表"产品"包含产品信息。这包括产品的ID以及其高度、长度和宽度。

mpdatabaseusecase_2_sql_workbench

配置

添加MpDatabaseCore配置是为了建立一个与数据库的连接。必须指定连接参数。

应该建立一个与数据库"Data"的连接。在配置数据库时,已经指定了用户名、密码、IP地址和端口号。它们必须在配置中指定。

 

mpdatabaseusecase_2_database_config

这些查询在"查询"一节中定义。

根据产品ID,目的是要求从表"班次"和"产品"中获取信息。信息可以通过查询类型SELECT来请求。由于信息是从两个不同的表中请求的,因此需要一个更复杂的数据库查询。

为此创建了一个名为"SelectData"的用户定义的查询。为了达到所需的目的,可以使用SQL关键字"INNER JOIN"。根据产品的ID,可以从不同的表中请求信息。欲了解更多信息,请看这里

所需的用户定义的查询是在"查询"下定义的。要求的信息被存储在过程变量"gSelectData"中。

mpdatabaseusecase_2_userdefined_query

过程变量是用户定义的数据类型Select_Type。产品的质量、长度以及班次的开始时间都可以存储在这个结构中。

mpdatabaseusecase_2_variable_datatype

关于各个查询类型的更多信息,请看这里

Script脚本

在mapp Database连接到数据库之前,必须启用一个脚本。它负责确保数据可以在数据库和mapp Database之间进行交换。该脚本可以在安装服务器一节中下载 。有关该脚本的其他信息也可以在那里找到。

logo_online_tutorial

我们的 B&R教程门户网站 包括教程 "mapp Database - Part 1" (GER/ENG),其中解释了脚本的工作原理和如何启动它。(访问数据)

使用mapp组件

功能块 MpDatabaseCoreMpDatabaseQuery 被添加和配置。

logo_online_tutorial

有关如何配置功能块的信息,请参阅B&R教程"mapp Database - Part 2""mapp Database - Part 3"

配置的查询可以使用 MpDatabaseQuery执行 。配置中定义的查询名称必须在 MpDatabaseQuery的输入参数"Name"中指定 。

MpDatabaseCore上的"Connect = TRUE"建立了一个与数据库的连接。使用 MpDatabaseQuery的"Execute = TRUE"开始查询 。

正如MpDatabaseCore配置中所描述的 ,所请求的数据显示在过程变量"gSelectData"中,并可以被检查。