多媒体数据库管理系统的设计和开发

时间:2007-05-26
开发集图像、声音、文字等多媒体信息于一体的数据库管理系统,仍是近阶段数据库的一个发展方向。如何使系统既具有数据库管理系统的优异性能,又具备多媒体系统的丰富多彩,是目前大家在探讨的一个问题。下面将作者开发航材多媒体数据库管理系统的点滴经验做一介绍。
1 航材多媒体信息管理系统的组成和开发

l.1 航材多媒体信息管理系统的组成

航材仓库担负着航材的筹措、储存、管理、发付等任务。通常仓库中储存成千上万种器材,主管人员既要随时掌握器材的库存状况,做好航材保障工作,又要督促下级认真学习,掌握娴熟的工作技能,还要进行科学管理,做好平时的保密工作。针对以上要求,我们设计的系统功能如图1所示。

1.2 航材多媒体信息管理系统的开发

(1)Autherware环境下数据库的创建应用

本系统需要处理的信息包括图片、声音、文字、视频、动画等,种类较多。既有描述器材性能的说明性文字,又有器材的图片;既有器材库存情况的详尽资料,以满足仓库科学管理的需要,又有考核学习者的知识题库;在某些特殊的位置还有语音说明、背景音乐的渲染、视频动画的演示。因此,系统需要处理的信息量很大。像这样集声音、文字、图片等信息于一体,具备数据信息的学习、考核、演示、管理维护等功能的管理信息系统,用Autherware来开发,不仅处理多媒体信息非常方便,而且结合运用数据库处理工具Access和SQL Server,能增大信息容量,提高系统开发的灵活性。

本系统的数据库分为2级:基本库和二级库。基本库包括器材信息库和业务基本知识库。器材信息库存储了器材的所有信息;业务基本知识库存储了业务人员必须掌握的基本知识,以文本形式出现。二级库是基于学习者学习结果产生的,因人而异,动态出现,即时更新,具有不重复性,主要用于生成考核试卷。

在基本库中我们从下面几个方面对器材属性进行描述:器材名称、器材型号、出厂日期、货架号、库存数量、器材价格、器材图片、语音讲解等。器材图片信息的数据量较大,出于方便存储和便于更新的考虑,我们把他以文件的形式单独存放,然后再创建一个映射表单,把器材图片文件和数据库联系起来,通过映射表单在数据库中进行调用。映射表单如图2所示(出于保密,做了特殊处理)。

在Autherware中调用图片文件的过程如下:

……
mm:=GetSpriteProperty(@〞combobox2〞,# text)
Ib32:=〞select型号from wjj where文件夹=′〞∧mm∧ 〞 ′〞
ODBCHandle:=ODBCOpen(WindowHandle,〞odbcerror〞?quot;123〞,〞〞,〞〞)
Ib321:=ODBCExeeute(ODBCHandle,Ib32)
ODBCCIose(ODBCHandle)
recordcountl:=LineCount(Ib321)
……
……
ODBCError:=〞〞
ODBCHandle:=ODBCOpen(WindowHandle,〞odbeerror〞,"123〞,〞〞,〞〞)
Ij:=〞select路径from wjj where型号=′〞∧mm9∧ 〞 ′〞
display_namel:=〞select器材名称from lianxi where型号′〞∧mm9∧ 〞 ′〞
Ijl:=ODBCExecute(ODBCHandle,Ij)
display_namell:=ODBCExecute(ODBCHandle,displaynamel)
SetSpriteProperty(@"display_name",#fontname,"黑体")
SetSpriteProperty(@"display_name",#fontsize,24)
SetSpriteProperty(④"display_name",~liststyle,0)
SetSpriteProperty(④"display_name",#multiselect,0)
CallSprite(@"display_name",#additem,GetLine(display_name11,1))
SetSpriteProperty(@"kodak9',#image,FileLocation∧Ij1)
CallSprite(@〞fkodak9",#display)
ODBCCIose(ODBCHandle)

对器材性能进行语音解说的数据也以文件的形式单独存放,调用方法和过程同上。

(2)Authorware环境下数据库的连接应用

实现Authorware对数据库的操作,必须首先建立Authorware和数据库的连接。连接的建立是通过ODBC的配置完成的。ODBC配置有手工配置和自动配置2种方式,本系统采用的是自动配置,过程如图3所示。

Authorware对数据库的操作要具备2个条件:一是借助数据库语言,这里使用SQI。语言;二是配有ODBC.U32函数。ODBC.U32函数在使用前首先要通过load调用,装入系统后才能使用。ODBC.U32函数结合SQL语言就可以对数据库进行有关操作了。下面是对别名为"123"的数据库实现查询的一段源代码:

ODBCError:=""
ODBCHandle;=ODBCOpen(WindowHandle,"odbcerror//' //123//,///f,////)
displayl=GetSpriteProperty(@"combobox",# text)
display3:="select路径from wjj where型号=′〞∧displayl∧ 〞 ′〞
display31:=ODBCExecute(ODBCHandle,display3)
SetSpriteProperty(@"kodak",# image,FileLocation·display31)
CallSprite(@"kodak",#display)
ODBCCIose(ODBCHandle)

其中,ODBCOpen(),ODBCExecute(),ODBCClose()是ODBC.U32函数,用于构建函数句柄,打开和关闭数据库;

"select路径fromw¨where型号:///·displayl·""是数据库查询语言,用于对数据库的查询操作。

2 应用ActiveX数据库控件技术增强多媒体系统开发的灵活性

2.1 Authorware中ActiveX数据库控件技术

正是因为提供了对ActiveX控件的技术支持,才显示出这一多媒体开发软件的优异性能和强大的生命力。如果单纯用Authorware开发多媒体系统,不借助控件,管理系统许多功能的实现将非常困难,并且系统界面的可视性不强,系统的信息容量小,内容单薄。

在Authorware中使用ActiveX控件技术的过程如下:首先要保证在Authorware安装中存在ActXpriv.X32和ActiveX.X32两个文件,前者用于创作用户界面,后者用于运行Authorware作品。其次,要在系统中安装与ActiveX有关的Windows系统文件,如:Actxprxy·dll,Urlmon.dll等。才是加入需要的ActiveX控件,ActiveX控件在使用之前必须在系统中注册,否则仍不能正常使用。

ActiveX控件在注册后就具有了和Authorware中Sprite Xtra一样的功能,也就是说可以像使用Sprite Xtra一样使用ActiveX控件了,并且可以控制和管理控件的属性、方法、事件和窗口等资源。

2.2 第三方软件开发的ActiveX控件的引入

尽管Authorware提供了对ActiveX控件的技术支持,但是能够直接用于数据库开发的控件很少,因此有必要自己开发所需的ActiveX控件。在开发本系统过程中,我们使用Visual Basic语言开发了一些数据库控件。用Visual Basic语言开发ActiveX控件的方式有3种:从现有控件中组装控件,改装现有的控件,由零开始制作控件。不论用何种方式制作控件,控件源程序都编译生成OCX文件。把OCX文件简单拷贝到Authorware应用程序目录下并不能被调用,还需要进行注册和配置,添加运行库文件。用Visual Basic编写ActiveX控件源程序的方法和过程不是本文介绍的重点。下面举例说明在Authorware中调用ActiveX控件的方法和过程,如图4所示。

图4是系统数据编辑功能中新增数据部分,其中,hc_bj_zj.OCX是编译后的实现数据增加功能的控件文件。

3 结 语

总之,任何一种软件开发工具都有其优点和缺点,面对一项任务,只有综合应用多种开发工具,才能把任务完成得很精彩,也只有这样,才能使Authorware平台中的多种信息媒体都变得精彩纷呈,这也体现出了一个软件开发者的综合开发能力。

 

  
上一篇:有线宽带技术的整合及发展的优势
下一篇:等效法在单环无源负反馈电路计算中的应用

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料