{信息技术}计算机信息管理技术

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(信息技术)计算机信息管

理技术

计算机信息管理技术

摘要:当今数据库技术已成为计算机应用的核心技术,能够认为当今任何计算机信息系统和计算机应用系统均和数据库的应用分不开,数据库已成为其核心和基础。建立数据库应用系统是要充分利用数据库中的数据。对数据库中的数据进行的操作除增加(Insert)、更改(update)和删除(delete)外,最常用,也是重要的是查询操作。即便是最简单的数据库应用系统,也离不开查询功能,查询能够说是进行数据管理的重要手段,不过也是数据库应用系统开发过程中较困难、花时间、有壹定难度的部分。

关键词:计算机;信息;查询

1、综合信息的查询

目前,随着工具软件的发展和广泛采用,使数据库应用系统的开发如虎添翼,其中PowerBuilder以其独特的数据窗口(DataWindow)倍受欢迎。

PowerBuider是美国著名的数据库应用开发工具生产厂家Powersoft公司于1991年6月推出的功能强大、性能优异的开发工具,它是壹种面向对象的、具有可视图形界面的、快速的交互开发工具。智能化的数据窗口对象是其精华所于。利用此对象能够操作关系数据库的数据而无需写入SQL语句,即能够直接检索、更新和用多种形式表现数据源中的数据。但要注意,必须使数据窗口成为窗口(Window)下数据窗口控制的壹个连接对象,数据窗口才能使用户于应用执行期间访问数据库中的数据。

利用PowerBuilder提供的内部查询机制,我们即能够让数据窗口作为查询条件的输入,又能够让该数据窗口作为查询结果的输出,这样就能够使数据窗口中的所有数据项进行自由组合的查询。例如:于窗口W_que上建立俩个数据窗口控制dw_1和dw_2,分别连接俩个数据窗口对象dw_que1和dw_que2,其中dw_1用于输入查询条件,而dw_2用于显示满足查询条件的所有元组。事实上条件的输入及元组的显示完全能够于壹个数据窗口中实现,考虑到这俩种操作的差别(例:条件输入可编辑,而元组显示不可编辑;条件输入可为某壹范围,而元组显示仅为满足条件的所有纪录……)将其用俩个数据窗口控制来实现。这就要求dw_2和dw_1数据共享,即要求dw_que1和dw_que2俩数据窗口的数据源完全相同。

用这种方法实现查询优点突出,例:通过设置数据窗口中对应列的编辑风格(EditStyles)为相应的下拉式数据窗口(DropDownDataWindow),使显示的元组文字化。注意,这要事先建好下拉式数据窗口。设置数据窗口中对应列的编辑风格同样可满足其它显示需要。利用数据窗口的风格特点:查询表的列宽、列序可自由改变,甚至能够覆盖掉壹些列,以达到更满足查询显示的需要。综合查询的信息来自多个表,改变数据窗口的数据源,采用多表连接的数据源即可实现。可是如我们问题的描述,如果我们需要的查询项随机地来自这43张表中的数据项,显示项也是随机地。这种任意条件的组合,可选输出项的显示称为动态查询(DynamicQuery)依然采用上述方法,数据窗口dw_que1和dw_que2的数据源将是这43张表的连接,先不说

效率问题,单从这426个项中输入查询条件,又显示这426个项,就使人敬而远之。因为,于每壹次查询前,均不了解此次查询的要求是什么,这样,每张表中的每壹个数据项均缺壹不可;另壹方面,每壹次的查询,壹旦查询条件确定、显示条目也确定后,我们会发现,每壹次有意义的查询且不是需要全部的43张表,换言之,每壹次查询没有必要将43张表全部连结,而应只连接那些被选中数据项所于的表,即数据源是动态产生的。由于数据源不确定,数据窗口就无法设计,动态查询无法用这种方法实现。

2、计算机动态查询的实现

于某些实际的应用系统开发中,由于用户于开发前提不出查询的需求,而于系统运行中希望能够对所有的数据项任意组合进行查询,以满足来自多方的需求,实现动态地查询(即随机地从43张表中选择数据项进行组合作为查询条件且任意地选择数据项作为显示条目)。对于此类查询的实现要利用PowerBuilder通过编程的方式于运行时动态地创建数据窗口,且动态地控制数据窗口。

动态地创建壹个数据窗口,应用程序需要执行下列任务:

•动态地构造SQL语句。

•用符合数据窗口语法的字符串,为当下的数据窗口控制创建壹个数据窗口对象。具体实现如下:

2.1动态地生成SQL语句,根据SQL的语法:SELECTstringaFROMstringb

WHEREstringc

也就是动态地生成stringa,stringb,stringc.由用户输入要显示的列,壹旦输入完毕,列名就随之确定,将所有列名拼成壹个“串”,中间用“,”分隔,形如“columm1,column2,column3,...,columnr”,则动态地生成stringa;同样由用户输入查询条件,包括相应的列、满足的条件或范围、逻辑关系等,将这些条件拚成壹个串,即为stringc,显然,所有的列名均确定了,他们所于的表名也确定了,按照stringb的语法规则即可构造。

注意:上面的stringc由俩部分(表间关系stringc1及查询条件stringc2)组成;表名串stringb和表间关系stringc1、查询条件stringc2及显示条目stringa均有关。

于实现的过程中:为贴近实际应用,习惯上,先输入查询条件,再输入显示条目。即于输入查询条件后,生成strinc2,stringb,stringc1;然后,再于输入显示条目后生成stringa,且修改stringc1,stringb。最后形成SQL 语法:

str="select"+stringa+"from"+stringb+"where"+stringcl+string c2

2.2于当下的事物对象里利用关联的SyntaxFromSQL()函数生成符合数据窗口语法的字符串:

exp=syntaxfromsq1(sq1ca,str,strsty,error)生成数据窗口的源代码其中:strsty为数据窗口的显示风格,例:

strsty="style(type=grid)datawindow(units=lcolor=12632256)t ext(font.face='system')"

相关文档
最新文档