力控与SQL Server数据库交互方法详解

一、引言

在使用力控组态软件进行上位机编程时,数据库的使用至关重要。它不仅能够存储大量数据,还支持数据的快速查询与分析。SQL Server作为一款常用的关系型数据库管理系统,与力控软件的交互尤为紧密。本文将详细介绍力控如何与SQL Server数据库进行交互。

二、建立数据库与数据源

  1. 建立数据库
  2. 首先,我们需要打开SQL Server数据库管理器,并连接到本地服务器。然后,新建一个名为“Historydata”的数据库,用于与力控软件进行数据交互。

新建数据库

  1. 建立数据源

在控制面板中->管理工具,打开ODBC数据库管理程序(32位),添加一个用户数据源。

新建数据源

  1. 选择SQL Server后,点击“完成”按钮,进入创建到新的数据源对话框。

数据源驱动程程选择

点击“完成”按钮后,弹出创建到新的数据源对话框,填写新的数据源名称后,选择本地数据库,再点击“下一步”。

创建到SQL的新数据源

DSN配置

选择默认的数据库,这里我们选择刚刚新建的Historydata数据库。

选择默认数据库

DSN配置

点击测试数据源按钮,将提示数据库测试是否成功。如下图所示。

测试数据源

数据源测试结果

三、力控ADO后台组件配置

在力控组态软件的后台组件中,找到ADO组件并添加。接着,打开ADO组件并设置数据源。点击设置按钮,进入关系数据源配置框。

数据源配置

点击设置按钮,将弹出关系数据源配置框,点击添加按钮,配置新的数据源。

关系数据源配置

设置数据源名称,并点击右侧的按钮,来选择数据源。

数据源命名

选择我们之前新建好的数据源,并指定使用的数据库,可以点击测试连接。如成功,则代表可以正常连接该数据库。

配置数据库链接属性

四、力控与数据库的交互

  1. 新建表格

使用力控ADO组件的ExcuteSQL函数可以执行SQL语句,用于创建数据库表格。例如,我们可以创建一个名为Historydata的表格,包含日期时间、产品编号、测试压力、保压时间、颗粒度、温度和泄漏压降等字段。除日期时间为datetime类型外,其他字段均为text类型。具体执行脚本如下:

#ADOModule.ExcuteSQL(\”create table Historydata(日期时间 datetime,产品编号 text,测试压力 text,保压时间 text,颗粒度 text,温度 text,泄漏压降 text,) \”);//创建Historydata表格。

  1. 插入数据记录

在力控脚本中引用变量时,需要将变量转换成字符串形式。根据数值型变量和字符型变量的不同,采用相应的转换方法。

格式如下:

1. 数值型变量: 字段名 = \”+IntToStr(变量名, 10)+\”; //// 10表示变量为十进制数

2. 字符型变量: 字段名 = \’ \”+变量名+\” \’;

然后,使用ExcuteSQL函数执行INSERT语句,将数据记录插入到Historydata表格中。具体执行脚本如下:

#ADOModule.ExcuteSQL(\”insert into Historydata(测试时间,产品编号,测试压力,保压时间,颗粒度,温度,泄漏压降) values (\’\”+StrTime($Curtime,1)+\”\’,\’\”+SQL\\Unit1\\SQL_testname.DESC+\”\’,\’\”+RealToStr(SQL\\Unit1\\SQL_testpressure.PV,5,1)+\”\’,\’\”+RealToStr(SQL\\Unit1\\SQL_holdtime.PV,5,1)+\”\’,\’\”+RealToStr(SQL\\Unit1\\SQL_KLD.PV,5,1)+\”\’,\’\”+RealToStr(SQL\\Unit1\\SQL_temp.PV,5,1)+\”\’,\’\”+RealToStr(SQL\\Unit1\\SQL_pressure_drop.PV,5,1)+\”\’)\”);

  1. 数据库查询

数据库查询同样需要使用ExcuteSQL函数或力控内置的SQL查询函数。根据查询条件,构建相应的SELECT语句。例如,我们可以按照时间段查询Historydata表格中的数据,将查询结果展示在力控软件的报表或界面中。

以下是一个按照时间段查询的示例。

查询开始时间 = IntToStr(#DateTime1.Year,10) + \”/\” + IntToStr(#DateTime1.Month,10) + \”/\” + IntToStr(#DateTime1.Day,10);

查询结束时间 = IntToStr(#DateTime.Year,10) + \”/\” + IntToStr(#DateTime.Month,10) + \”/\” + IntToStr(#DateTime.Day,10);

#Report1.SqlQueryEx(0,\”select [测试时间],[产品编号],[测试压力],[保压时间],[颗粒度],[温度],[泄漏压降] from [Historydata] where [测试时间] >= \’\”+查询开始时间+\”\’ and [测试时间] <= \’\”+查询结束时间+\”\’ \”);

五、结论

通过以上步骤,我们实现了力控与SQL Server数据库的交互。这种交互方法不仅提高了数据的存储和管理效率,还为数据的快速查询和分析提供了有力支持。在实际应用中,我们可以根据具体需求对数据库表格结构、数据插入方式和查询条件进行调整和优化,以满足不同场景下的数据交互需求。

数据库的分类以及作用

数据库可以分为多种类型,不同类型的数据库具有不同的特点和适用场景,其主要作用是存储、管理和检索数据。以下是常见的数据库分类及其作用:

一、关系型数据库

  1. 定义:关系型数据库是建立在关系模型基础上的数据库,它通过表之间的关系来组织数据。
  2. 常见产品:MySQL、Oracle、SQL Server、PostgreSQL 等。
  3. 特点:数据以表格的形式存储,表格由行和列组成,每行代表一条记录,每列代表一个属性。支持 SQL(Structured Query Language,结构化查询语言),这是一种标准化的语言,用于查询、插入、更新和删除数据。提供事务处理功能,确保数据的一致性和完整性。例如,在银行系统中,从一个账户向另一个账户转账时,必须确保整个操作要么完全成功,要么完全失败,不能出现部分成功的情况。具有较高的数据一致性和可靠性,适合存储结构化数据。例如企业的、订单数据等。
  4. 作用:企业管理:用于存储企业的各种业务数据,如、订单信息、库存信息等,帮助企业进行数据分析和决策。金融领域:存储交易记录、客户账户信息等,确保数据的准确性和安全性。电子商务:管理商品信息、用户订单、购物车数据等,为用户提供个性化的购物体验。

二非关系型数据库(NoSQL 数据库)

  1. 定义:非关系型数据库不使用传统的关系模型,而是采用不同的数据存储和查询方式。
  2. 分类及常见产品:键值存储数据库:如 Redis、Memcached。以键值对的形式存储数据,其中键是唯一的标识符,值可以是任何数据类型。文档数据库:如 MongoDB。以文档的形式存储数据,每个文档可以包含不同的字段和结构,适合存储半结构化数据。列存储数据库:如 HBase。将数据按照列进行存储,适合处理大规模的数据分析和查询。图形数据库:如 Neo4j。用于存储和查询图形数据,适合处理复杂的关系网络。
  3. 特点:灵活性高:可以存储不同结构的数据,无需预先定义表格结构。可扩展性强:能够轻松应对大规模数据和高并发访问。性能高:通常采用分布式架构,能够快速读写数据。
  4. 作用:大数据处理:在处理海量数据时,非关系型数据库能够提供高效的存储和查询性能。例如,互联网公司可以使用 HBase 来存储和分析用户行为数据。实时应用:Redis 等键值存储数据库可以用于缓存数据,提高应用的响应速度。在电商网站中,可以将热门商品信息缓存到 Redis 中,减少对数据库的访问压力。社交网络分析:图形数据库适合存储和分析社交网络中的关系数据。例如,分析用户之间的关注关系、朋友圈关系等。

三、面向对象数据库

  1. 定义:面向对象数据库是一种以面向对象编程语言为基础的数据库系统,它将数据和操作封装在对象中。
  2. 特点:支持面向对象的编程概念,如继承、多态、封装等。可以存储和管理复杂的对象结构,适合存储具有复杂关系的业务数据。
  3. 作用:工程设计领域:存储和管理 CAD/CAM 系统中的设计数据,如三维模型、工程图纸等。地理信息系统:存储和查询地理空间数据,如地图数据、地形数据等。

四、层次数据库

  1. 定义:层次数据库以层次结构组织数据,数据之间的关系类似于树形结构。
  2. 特点:数据结构简单,易于理解和实现。适合存储具有层次关系的数据,如组织机构图、文件系统等。
  3. 作用:企业组织架构管理:存储企业的部门结构、人员关系等信息。文件系统管理:早期的操作系统中常使用层次数据库来管理文件系统。

五、网状数据库

  1. 定义:网状数据库以网状结构组织数据,数据之间的关系更加复杂,可以有多个父节点和子节点。
  2. 特点:能够表示复杂的多对多关系。灵活性高,但数据结构复杂,查询和管理相对困难。
  3. 作用:复杂业务系统:在一些需要处理复杂关系的业务系统中,如物流管理系统、供应链系统等,可以使用网状数据库来存储和管理数据。

总之,不同类型的数据库在数据存储、管理和查询方面具有各自的优势和适用场景。在选择数据库时,需要根据具体的业务需求、数据特点和性能要求来进行综合考虑。

数据库系统原理:数据库系统的组成

数据库系统是一个人机系统。学习数据库系统,要先学习数据库系统的组成。

一、数据库系统的组成

数据库系统一般由数据库、硬件、软件和人员组成。

(1)数据库:物理数据库,描述数据库。

物理数据库:应用数据的集合,是DB的主体。

描述数据库:关于各级数据结构的描述,由数据字典(DD)系统管理。

简单数据字典示例

如图所示的数据字典中记录了系统中所有数据项的信息,而数据项是数据库中最基本的单位。

除了物理数据库和描述数据库外,还有用于故障恢复的日志系统数据库、用于查询优化的索引以及一些统计数据库等。

(2)硬件

数据库系统中的硬件包括CPU、内存、外存、I/O设备、数据通道等设备。

(3)软件

数据库管理系统(DBMS)、操作系统(OS)、各种与数据库接口的高级语言及编译系统、应用开发工具、数据库应用系统等。

数据库应用系统是最外层的系统,与特定的应用有关;最内层的是操作系统,以来支持数据库以及其他的软件的运行;高级语言及编译系统、应用开发工具是用来是用来开发数据库系统的;数据库管理系统是整个数据库系统的核心。

(4)人员

数据库管理员(DBA),系统分析员,数据库设计人员,应用程序员,最终用户。

二、各类使用数据库系统人员的职责

(1)数据库管理员(DBA)(专门用来监督、管理、控制数据库系统运行的最重要人员)的职责为:

1.模式定义,决定数据库中信息内容和结构

2. 内模式定义,决定数据库的存储结构和存取策略

3.根据要求修改数据库的模式和内模式

4.对数据库访问的权限,定义数据的安全性

5.完整性约束条件的说明

6.监控数据库的使用和运行(处理出现的问题)

7.数据库的改进和重组重构(改进数据库设计 )

(2)系统分析员的职责为:

负责应用系统的需求分析和规范说明,确定系统的硬件软件配置,参与数据库系统的概要设计。

(3)数据库设计人员的职责为:

负责数据库中数据的确定,各级模式的设计,参加用户需求调查和系统分析,进行数据库设计。

(4)应用程序员的职责为:

负责设计和编写应用系统的程序模块、调试和安装。

(5)用户

最终用户通过应用系统的用户接口使用数据库。常用的接口方式有浏览菜单驱动、表格操作、图形显示等,以简明直观的表示方式显示数据。

偶然用户:企业中高级管理人员,不常访问数据库,但访问时往往需要不同的数据库信息。

简单用户:多数用户是简单用户,工作是通过应用程序的友好界面查询和修改数据库中的数据。

复杂用户:工程师、科学家等人员,熟悉DBMS的各种功能,可直接用DML语言访问数据库,用API编写自己程序。

数据库系统不仅是一个计算机系统,也是一个人-机系统,人的作用尤为重要。

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。