数据库管理系统用户接口层(数据库)
时间:2022-11-17 22:30:01 | 来源:信息时代
时间:2022-11-17 22:30:01 来源:信息时代
数据库管理系统用户接口层 : 用户和数据库打交道的界面,通过该界面用户将他对数据库的存取意图告知数据库并从该界面获取所需要的数据。表达用户对数据库的存取意图要通过数据库的查询语言,著名和使用广泛的是类英语的结构查询语言(structured query language,SQL),此外著名的还有QBE(query by example)、Alpha等。
这里要强调的是数据库系统向用户提供的是一种高级语言接口,是一种非过程型的、集合论型的和描述型的语言接口,用户使用该语言时只需指出要做什么(what)就可以了,不必详细指明怎么去做(how),这种语言统一对数据进行定义、操纵和检查,它简化了应用开发,大大提高了用户的效率(与之相对的过程型语言如FORTRAN、PASCAL、PL/1、BASIC、C、C++、Java等,则需要用户编程时详细指明一步步怎么去做,对用户的要求很高)。
数据库系统的高级语言接口又分为三种类型。第一种是终端用户的交互式自含(self contained)语言接口,如上面提及的SQL、QBE、Alpha等。第二种是将数据库语言嵌入到宿主语言中的语言接口,如选择宿主语言为编程语言PL/1或C++,而将完成数据库存取功能的数据库语言(如SQL)嵌入宿主语言的程序之中以完成应用开发。第三种是面向非程序员用户的接口,这一类用户是他们本专业的专家但却是程序设计的外行,因此,他们对数据库的存取按特定的应用来设计,使用户通过自己的专业行话来同数据库打交道,而由系统将之自动翻译成SQL或SQL+PL/1的语句,这大大方便了非程序员用户。
以上三种类型的用户接口如图1所示。
图1 数据库系统的高级语言接口
除了上述高级语言接口之外,还有数据库的图形用户接口,如多媒体表格(forms)、直方图、折线图、曲线图和饼图等。还有一种用户接口是数据库管理员使用的接口,对数据库系统进行管理和维护。
容易看出,以上的高级语言接口用以表达用户对数据库的存取意图,是数据库系统用户界面上的输入(input),而从数据库中检索出的结果数据则是输出(output),输出的结果是关系数据或关系数据的简单计算,如求和、求平均、求最大或最小,以及按某属性排序的结果。简单地直接列出结果数据是早期的常用做法,但其可读性、可视性和易理解性不理想,故在用户接口中发展了数据的展示(presentation),将结果数据用人们习惯采用的表格(包括多层表头)和图形,如直方图、折线图、曲线图、散点图和百分比饼图来表示,甚至扩展到图形(graph)、图像(image)、音频(audio)、视频(video)和动画(animation)等多媒体表示。
用户接口由于其在应用方面的极端重要性,故历来受到计算机软件公司的重视,研发了许多脍炙人口的软件系统,著名的有微软公司的Excel,已被IBM公司收购的Lotus 1-2-3,中科院数学所研制的微机多媒体数据库系统CDB/M,MIT研制的X Window,微软公司的MS-Windows,SUN公司的SUN View/SUN Windows ,XEROX 公 司 的Smalltalk-80和Interlisp-D,Apple公司的Macintosh窗口系统,IBM公司OS/2上的Presentation Manager及Topview,卡内基-梅隆大学的Andrew和SGI公司的4 Sight。丰富多彩的多媒体用户接口,易用易理解的可视化用户接口,以致通过自然语言进行人机交互的用户接口仍然是人们研究和开发的热点和方向。
对于用户接口的评价其标准自然是方便、简单易用和高效并提供丰富的功能。M.Jarke 和Y.Vassiliou提出了一种对用户接口的评价树(见图2),从若干具体的方面建议了一些评价准则。这里给出对用户接口语言的评价树,但其原则对一般的用户接口也是适用的。
图2 用户接口语言评价树