基于SQL数据库的粮情数据存储

时间:2022-10-25 10:24:50

基于SQL数据库的粮情数据存储

【摘要】粮情信息管理的重点在于信息查询和分析,这些功能所依据的核心是粮情信息存储。本文提出了在VC++6.0的软件开发平台上采用动态数据库的方式实现对粮情信息的报文进行存储,(该方法)使用了ADO动态数据库开发技术、多线程处理技术等。该方法让信息存储、提取、分析变的更加快捷,减少了存储冗余度,方便管理粮情信息和长期保存,具有很好的推广价值。

【关键词】SQL SERVER;粮情信息管理;信息存储;动态数据库

1.引言

随着数字化信息技术的发展,越来越多的信息化技术开始应用于粮食仓储行业,其中,粮情管理正全面地向信息化、智能化模式方向发展。粮情信息的存储、分析是粮情信息管理系统的核心部分。

粮情信息管理系统中处理的主要是仓外温湿度信息、仓内温湿度信息、粮堆温度信息等,其主要特点就是信息存储量大、信息检索多样、信息保存周期长。SQL SERVER数据库作为企业级数据库管理软件,采用结构化查询语言,是各种信息管理系统的常用数据库开发工具。但由于粮情信息的大信息量存储、检索多样化、数据分析等特点,粮情信息管理系统对数据存储的容量要求很高。

粮情信息存储通过串口接收粮情信息,采用多线程技术对粮情数据进行打包,通过连接ADO动态数据库将打包后的粮情报文存入到SQL SERVER数据库中。

图1 仓房测试点排布示意图

2.数据库设计

数据库的设计是数据存储的关键,一个好的数据表的设计能降低系统冗余,增加检索的高效、减轻系统负担和数据处理的压力。

粮情信息数据表的设计主要是设计存储方式和存储属性,粮情信息检索需要的内容包括如表1所示。

其中仓内粮温数组的定义是由于仓内每个测试点都有一个独立的仓内粮温,且测试点个数不是固定的,故而组成数组形式存储。

针对仓内粮温数组,由于每个粮仓的测试个数不是固定的,所以需将测试点个数记录下来,以此来确定数组长度,如表2所示。

图2 数据处理流程图

数组大小确定以后,还需将每个测试点得粮温信息按照一定的顺序存储在仓内粮温数组中。以庐江粮库为例,每个测试点的粮温信息存储4byte,格式如下:

单个测试点的粮温信息存储确定后,将测试点粮温信息按照顺序存储在数组中,如表3所示。数组格式确定好后,只需将数组中测试点与实际仓房中各个位置的测试点一一对应即可。

而测试点位置信息又如何确定呢?如图1所示。以庐江粮库平房仓为例,以仓库建立坐标系,设立X、Y、Z三个坐标轴,先由Z轴递增,再递增Y轴,最后递增X轴。依次遍历仓房中所有的测试点,这样形成的序号就可作为测试点的编号,以上便完成了粮情信息表设计。

3.后台数据存储的实现

针对上位机后台的数据存储,先要确定原始信息和处理信息,通过com控件技术实现数字信号的接受,并将原始粮情信息存储在计算机的内存中,报文接受结束后,采用SendMessage消息机制,调用报文并解析,再判断解析后的报文是否完整,若报文是完整,进行相应数据处理,获取最大粮温、最小粮温、平均粮温得粮情数据,再通过嵌入式sql语句,按照制定的准则,将粮情信息形成新的数据文件,最后通过sql语句将所需信息存储到粮情信息数据表中。后台数据存储流程图如图2所示。最后完成代码编写,则基于sql的粮情信息存储完全实现。

4.结束语

本文提出了在VC++6.0的软件开发平台上,使用多线程技术和ADO动态数据库连接方式,将采集的粮情信息存储在SQL数据库中,经现场试验证明,本方法具有采集数据效率高、处理速度快、数据库存储量小等特点,具有较强的可实施性和推广性。

上一篇:车载应急通信系统装载平台的适用性研究 下一篇:锦屏二级水电站安全稳定控制装置的应用