第一文秘网    > 入党自传

基于MySQL的玉米病害检索诊断系统数据库设计

作者:jnscsh   时间:2022-02-17 08:39:42   浏览次数:

zoޛ)j馕P工作。本文从数据库设计切入,重点介绍了数据库E-R图的构建、基于MySQL的数据库物理设计及数据库表的设计与规范。

关键词:MySQL;玉米病害检索诊断系统;E-R图;数据库物理设计

中图分类号:S126+S435.131 文献标识号:A 文章编号:1001-4942(2015)08-0111-05

Abstract The construction of maize disease retrieve and diagnosis system included data acquisition, data processing, data mining, database design, retrieval algorithm design, diagnosis algorithm design, UI design of user interface and management interface, etc. The construction of E-R diagram, physical design of database based on MySQL and the design and specification of database tables were mainly introduced in this paper.

Key words MySQL; Maize disease retrieve and diagnosis system; E-R diagram; Physical design of database

20世纪80年代,我国开始对农作物病虫害专家系统进行研究,随着计算机技术的发展、农业技术与计算机技术的结合更加深入,特别是数据库管理系统、人机交互技术和人工智能系统等技术的不断发展,病虫害专家系统特别是病虫害诊断防治系统相继开发出来[1]。2009年曹丽英等[2]研发了基于框架表示的玉米病虫草害诊治专家系统,设计并实现了玉米病虫草害诊断、预报、查询、防治等功能。2011年曹婧华[3]等设计了基于网络的玉米病虫害专家系统,该系统实用性强、易于操作且具有决策能力,能够指导农民解决实际生产中遇到的问题。2012年刘同海等[4]构建了基于图像规则的玉米病虫草害诊断系统,可通过病虫草害图像及时实施远程智能诊断,确定其防治方法,解决了因专业技术人员短缺而导致玉米病虫草害得不到及时诊断与防治的问题。

但随着计算机新技术的发展,利用更先进优化的算法语言研发更为准确高效的玉米病害检索诊断系统对玉米生产的发展具有重要意义。本文重点阐述了玉米病害检索诊断系统建立过程中的数据库设计这一重要环节,主要包括数据库的E-R图构建和物理设计。旨在通过构建高效完备的数据库系统,汇总管理玉米病害信息,为玉米病害的检索诊断功能提供有力的技术和信息支持。

1 数据库E-R图

E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型及其属性和联系的方法,用来描述现实世界的概念模型,是数据库的重要组成部分。在E-R图中,矩形表示实体型,矩形框内写明实体名;椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来;菱形表示实体型之间的联系,在菱形框内写明联系名,并用无向边分别与有关实体型连接起来。

玉米病害检索诊断系统中主要包括作物部位、生长期、玉米病害信息、玉米病害历史等实体。实体的属性及之间的联系用E-R图表示如图1所示。

2 数据库物理设计

玉米病害检索诊断系统是集玉米病害专家知识库、病害信息检索、病害推理诊断功能于一体的综合性管理系统,能对大量数据进行安全高效的管理及检索、分析。因此,数据库的物理设计至关重要,影响着后续的SQL表达式开发和算法设计。

数据库物理设计包括选择数据库软件环境,创建数据字典,确定数据库实体属性(字段)、数据类型、长度、精度等。其中,数据库软件环境是数据库管理的载体,数据字典则说明了每个字段的用途及其可能存在的别名。

2.1 软件环境

玉米病害检索诊断系统对于后台的数据库软件有着严格要求,要求其能够有效存储和管理数据,因此,采用MySQL15.5数据库管理系统和SUNOS Solaris 10操作系统进行建设。

MySQL数据库管理系统是一种应用广泛的中小型关系数据库管理系统,可以在Unix、Linux、Solaris等服务器平台上运行,数据处理速度快、稳定性好、具有不同级别的安全权限和口令管理系统[5]。MySQL数据库管理系统将数据保存在不同的表中,而不是将所有数据放在一个“大仓库”内,这就提高了其数据管理效率和灵活性,为数据检索和病害诊断等应用功能提供了强有力的后台保障[6]。

Solaris 是Sun Microsystems研发的计算机操作系统,被认为是UNIX操作系统的衍生版本之一,通过与基于Sun SPARC处理器的硬件体系结构紧密结合,使整个软硬件系统的可靠性和性能大大增强[7,8]。

2.2 数据库设计原则

2.2.1 表的设计原则 玉米病害检索诊断系统在数据库表设计时实施了3NF标准,基于该标准的数据库表设计原则是一个表只包括其本身基本的属性,如果不是其本身具有的属性时,需要进行分解;表与表之间通过外键链接。3NF标准的主要特点是有一组表专门存放通过键链接起来的关联数据[9]。

玉米病害检索诊断系统设计了两大类不同的数据库数据表,一类是系统管理员数据表,包括系统管理员表和操作日志表,如表2、表3所示;另一类是病害信息数据表,包括作物字典表、作物部位字典表、作物生长期字典表、作物病斑特征字典表、作物农害字典表、作物病害详细表和作物病害历史表7个数据库表,如表4~表10所示。

“作物部位字典表”不包含所属作物信息和玉米生长期信息,但会存放2个键值,分别指向“作物字典表”和“作物生长期字典表”,从而建立起三者间的的联系。

“作物生长期字典表”不包含所属作物信息,但存放了一个指向“作物字典表”的键值,以建立起两者间的联系。

“作物病害详细表”不包含所属作物信息、玉米病害信息、病害部位信息以及作物生长期信息,但存放了4个键值,分别指向“作物字典表”、“作物农害字典表”、“作物部位字典表”和“作物生长期字典表”,从而建立起它们之间的联系。

2.2.2 数据库的命名规则 命名标准化有助于消除数据库中的数据冗余,玉米病害检索诊断系统的数据库采用了以下规则进行命名[10,11]。

表:数据表必须以有特征含义的单词或缩写组成,中间可以用“_”分割,例如:tbl_pstn_detail,最多含有四个单词或者缩写;表前缀加c;

字段:为有特征含义的单词,中间用“_”分割,最多包含四个单词或者缩写;

主键:_PK/_UK,主键名称应是“表名+_PK/_UK”。如果复合主键的构成字段较多,则

名称只包含第一个字段,且可以去掉前缀;

索引:_IDX+编号,索引名称应是“表名+_IDX+编号”;

外键:_FK,外键名称应是“外键表名+_FK+编号”;

视图:_VEIW,按业务操作命名视图;

存储过程:U_,按照接口编号操作命名存储过程;

序列:_SEQ,按照“需求名称+_SEQ”命名。

2.3 数据字典设计

数据字典是数据库的重要组成部分,存放着数据库所用的有关信息,对用户来说是一组只读的表[12]。

玉米病害检索诊断系统具有管理、检索和诊断玉米病害信息的功能。为了实现这些功能,需要对玉米病害数据进行分解,并设计形成不同的数据库表,即数据字典表。玉米病害信息系统共设计了9个数据字典表,表名与功能说明见表1。

2.3.1 系统管理员表 表名c_operator,储存系统中不同角色管理员的相关信息(见表2)。其中管理员编号是身份认证号,通过不同编号赋予不同的查询和诊断等管理权限;Type值为00的管理员拥有超级管理员身份。

2.3.2 系统管理员操作日志表 表名c_operator_log,存储管理员登陆系统的记录,包括入库时间、操作时间等记录(见表3)。超级管理员可通过检索本数据字典掌握普通管理员对系统进行的任何操作。

2.3.3 作物字典表 表名c_crop,存储作物种类名称信息(见表4)。玉米病害检索诊断系统目前只有玉米一种作物,但可以延展其他作物,为以后增加小麦、棉花、大豆等任何作物提供了接口。

2.3.4 作物部位字典表 表名c_crop_parts,存储作物的主要部位信息,包括茎、叶、根、穗等部位(见表5)。本表通过作物编号和所属生长期与“作物字典表”和“作物生长期字典表”联系在一起。

2.3.5 作物生长期字典表 表名c_growth_period,存储玉米这一作物的主要生长期名称及记录玉米病害发生的生长期等信息(见表6)。玉米的主要生长期按照玉米易感病害时期分为成株期和幼苗期。本表通过作物编号这一外键与“作物字典表”联系在一起。

2.3.6 作物病斑特征字典表 表名c_lesion,存储玉米这一作物的主要病害特征的名称(见表7)。病斑特征按照性质、形状和颜色分为三类,其中,病斑性质包括干枯、湿润、霉层、枯死、散裂、突起、粉末、肿瘤等;病斑形状包括圆形、椭圆、梭形、长条形、线形、肾形、球形、突起、扭曲、孔形等;病斑颜色包括白色、红色、黄褐色、灰黑色、灰褐色、铁锈红、黑色、绿色、黄绿相间、半透明等。系统将以上属性信息输入到数据库中,作为下拉菜单供用户选择,无需手工输入。

2.3.7 作物农害字典表 表名c_pest,存储农害的名称信息(见表8)。玉米的主要农害有病害、虫害和草害,本系统目前只涉及病害,但可扩展草害和虫害,为后期扩展到虫害和草害信息提供了接入口。

2.3.8 作物病害详细表 表名c_pest_detail,存储玉米病害的详细信息,包括病害名称、病害特征、治疗方法、病害图片等(见表9)。本表通过外键“所属作物”、“所属农害”、“发病部位”和“发病时期”与“作物字典表”、“作物农害字典表”、“作物部位字典表”和“作物生长期字典表”建立联系。

2.3.9 作物病害历史表 表名c_pest_history,存储玉米病害发生的省份、地区、受灾等级(1为轻度、2为中度,3为重度,可通过下拉菜单进行选择)、入库时间等信息(见表10)。本数据字典的设计为管理某一地区常发生的病害提供了数据基础,管理员可对该地区常发生的病害及其防治方法进行登记入档,其他用户则可通过检索及时了解这些病害,以便早期预防和防治。

3 结论

本文主要介绍了玉米病害检索诊断系统的数据库E-R图构建和数据库物理设计工作,包括数据库设计的软件环境、数据库表设计原则、数据库命名规则、数据字典设计。数据库采用MySQL 15.5+SUNOS Solaris 10方案建设;数据库表基于3NF标准进行设计,表与表之间通过外键链接;根据系统功能的需要,设计了9个数据字典表,分别为系统管理员表、系统管理员操作日志表、作物字典表、作物部位字典表、作物生长期字典表、作物病斑特征字典表、作物农害字典表、作物病害详细表、作物病害历史表,每个表只包括其自身的属性,如果不是其本身所具有的属性,则通过外键与其他表进行链接。本研究为后续玉米病害信息管理系统检索和诊断等功能的实现打下了坚实的基础。

参 考 文 献:

[1]刘孝永,王未名,封文杰,等. 病虫害专家系统研究进展 [J]. 山东农业科学, 2013, 45(9): 138-143.

[2] 曹丽英,肖艳华,姚玉霞,等. 基于框架表示的玉米病虫草害诊治专家系统的构建及实现 [J]. 玉米科学, 2009, 17(4): 148-150.

[3] 曹婧华,李楠,冉彦中,等. 基于网络的玉米病虫害专家系统设计分析 [J]. 玉米科学, 2011, 19(4): 149-152.

[4] 刘同海,黄斌博,李少昆,等. 基于图像规则推理的玉米病虫草害诊断系统的设计[J]. 中国农业大学学报, 2012, 17(4): 154-158.

[5] DuBois P. MySQL网络数据库指南[M]. 钟鸣,田晓涛,译. 北京:机械工业出版社, 2000.

[6] 冯燕奎.PHP4.0与MySQL动态网站编程[M].北京:清华大学出版社,2002.

[7] 景秀,任继平,汪汉荣. 基于Solaris 10的“Unix原理及应用”教学方法初探[J]. 农业网络信息, 2009 (5): 117-118, 123.

[8] 王超. 基于Solaris系统的虚拟机设计与实现 [J]. 信息与电脑:理论版, 2011 (6): 75-76.

[9] 谭淑英,李赫男,左贵启.服务器端的动态网站开发技术[J]. 计算机应用研究, 2002(5):143-145.

[10]刘江.基于Apache+Flex+PHP+MySQL技术的流媒体网站实现方案[J]. 程序员,2009(1): 64-65.

[11]白磊, 高杰.基于Apache+MySQL+PHP的电子商务网站的设计与实现[J]. 科技资讯,2006(12):203-204.

[12]易竞.PHP访问MYSQL数据库的实现[J]. 保险职业学院学报, 2008,22(3):79-81.

推荐访问:病害 玉米 诊断 检索 数据库