激光与材料相互作用数据库系统的设计

激光与材料相互作用数据库系统的设计
  摘 要:用POWERBUILDER8.0和ORACLE9i设计了包括材料名称、表面状况描述、几何
尺寸、激光参数、损伤模式、损伤阈值和实验条件等激光与材料相互作用数据库系统。可对激光与
材料相互作用的参数数据进行输入、输出和任意条件组合的查询,可以把参数按ANSYS输入文件
格式输出,作为ANSYS程序的输入文件,还可对数据库进行维护。
  关键词:激光;材料;数据库
1 引 言
  随着激光应用的日益发展,激光与材料相互作用的研究数据和资料越来越多,如何有效地
利用这些数据,为科研人员提供参考和指导,是一个急需解决的问题。目前,国内关于激光与
材料相互作用数据库系统的报道较少[1]。针对以上情况,本文中利用POWERBUILDER8.0
和ORACLE9i设计了能够对材料名称、表面状况描述、几何尺寸、激光参数、损伤模式、损伤阈
值、参考文献和实验条件等进行输入、输出和查询等工作的激光与材料相互作用数据库系统。
图1 系统功能模块图
2 系统总体结构
  系统采用模块化结构,其组成如图1所示。
数据输入模块实现把激光与材料相互作用的各种
参数数据录入到数据库中,如材料名称、表面状况
描述、几何尺寸(包括大小和厚度)、激光参数(包
括波长、模式、光斑尺寸、相互作用时间、光斑内能
量分布函数)、损伤模式、损伤阈值、参考文献和实
验条件等;数据查询模块实现对激光与材料相互
作用的各种参数数据按任意条件组合的查询;数
据输出模块实现对查询结果进行打印输出;数据按ANSYS输入文件格式输出模块实现把材
料的参数按ANSYS输入文件格式生成相应的文件,以供ANSYS程序的输入文件使用;系统
模块实现用户口令、操作权限、打印设置和退出等系统功能;维护模块实现对激光与材料相互
作用数据库进行维护。重点介绍数据查询模块和数据按ANSYS输入文件格式输出模块的设
计过程。
3 数据查询模块的设计
  数据库查询是数据库的核心操作。SQL(StructuredQueryLanguage)语言提供了
SELECT语句进行数据库的查询[2],该语句具有灵活的使用方式和丰富的功能。其一般格式
为:
  SELECT [ALL|DISTINCT]<目标列表达式>[,<目标列表达式>]…
  FROM <表名或视图名>[,<表名或视图名>]…
  [WHERE <条件表达式>]
  [GROUP BY <列名1> [HAVING <条件表达式>]]
  [ORDER BY <列名2> [ASC|DESC]];
  整个SELECT语句的含义是,根据WHERE子句的条件表达式,从FROM子句指定的
基本表或视图中找出满足条件的元组(表中的一行即为一个元组),再按SELECT子句中的目
标列表达式,选出元组中的属性值形成结果表。如果有GROUP子句,则将结果按<列名1>
的值进行分组,该属性列值相等的元组为一组。通常会在每组中作用集函数。如果GROUP
子句带HAVING短语,则只有满足指定条件的组才予输出。如果有ORDER子句,则结果表
还要按<列名2>的值的升序或降序排序。
  查询满足条件的元组可以通过WHERE子句实现。WHERE子句常用的查询条件见表
1。表1 常用的查询条件
查询条件谓词
比较=,>,<,>=,<=,! =,<>,! >,! <
确定范围BETWEEN AND,NOT BETWEEN AND
确定集合IN,NOT IN
字符匹配LIKE,NOT LIKE
空值ISNULL,IS NOT NULL
多重条件AND,OR
  一般的SQL语句中主变量个数是不变的,即是静态的,但是一般不能满足实际查询要求,
所以要求查询条件是动态可变的,也就是WHERE子句的条件是不确定的,只能在程序设计
中实现条件可变。
  数据查询模块的功能是实现由材料名称、表面状况描述、大小、厚度、波长、模式、光斑尺
寸、相互作用时间、损伤模式、损伤阈值、参考文献和实验条件等按任意条件组合查询数据库中
的数据。实现过程:
  第一步,在数据库中创建一个空的基表query。基表query字段的Header属性为左括号、
字段名、查询条件、查询值、右括号、逻辑值。
  第二步,在程序中创建一个数据窗口。数据窗口的SQL语法为SELECT * FROM que-
ry,风格为GRID,用来输入查询条件。
  第三步,设置每一个列的Edit属性的Style为DropDownListBox。其中“字段名”的dis-
play /data value为数据库中需要作为查询条件的字段名,如材料名称、表面状况描述、几何尺
寸;“查询条件”的display /data value为表1中的谓词;“逻辑值”的display value为“或者”、
“并且”,data value为“or”、“and”。
  第四步,生成动态WHERE条件语句。生成的格式为WHERE+左括号+字段名+查询
条件+查询值+右括号+逻辑值+…+左括号+字段名+查询条件+查询值+右括号。
  第五步,根据查询条件检索数据库中符合条件的元组。
  这样,对数据库的查询可以做到按任意条件组合查询,非常实用方便。
20     高 能 量 密 度 物 理            2006年3月 
4 数据按ANSYS输入文件格式输出模块的设计
  对于每个激光与材料相互作用的元组都包括参数表面反射率、材料透射率、表面发射率、
比热容和热膨胀率等随温度的变化情况,数据按ANSYS输入文件格式输出模块就是把这些
参数按ANSYS输入文件格式输出,输出的数据直接被ANSYS程序使用,实现的过程关键在
于数据库的设计和参数数据的录入。
  在数据库中创建的参数表的字段包括提示信息(温度,多个表面反射率、材料透射率、表面
发射率、比热容和热膨胀率等)、参数名称和多个值。
  在数据窗口中实现的参数录入格式见表2。
表2 参数录入格式
提示信息参数名称值1…值n
输入温度、表面反射率、材料透射率、
表面发射率、比热容或膨胀率在
ANSYS中的表示,如温度为mptemp
1 0.0
MPDATA DENS、NUXY 1…7850
  最后从数据库中按参数输入的顺序读取,在每个数据中添加逗号,输出的数据就可以直接
作为ANSYS程序的输入文件使用。
5 结 语
  本系统采用ORACLE9i作为后台数据库,用Client/Server模式构建。随着本系统数据
库的不断扩充,系统的参数查询功能将不断得到增强。
参考文献:
[1] 张小川,刘书华.激光加工数据库查询系统的设计.焊接技术,2002,31(6):28-29.
[2] 萨师煊,王珊.数据库系统概论.北京:高等教育出版社,2002.
21 第1期         黄娇凤等:激光与材料相互作用数据库系统的设计560
Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有