用面向对象数据库系统管理高校学生信息的探讨
- 格式:pdf
- 大小:160.23 KB
- 文档页数:2
学生学习管理系统摘要随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。
管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。
本文介绍了在环境下采用“自上而下地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。
通过分析某一学校学生管理的不足,创建了一套行之有效的计算机管理学生的方案。
文章介绍了学生管理信息系统的系统分析部分,包括可行性分析、业务流程分析等;系统设计部分主要介绍了系统功能设计和数据库设计及代码设计;系统实现部分说明了几个主要模块的算法,本系统界面友好,操作简单,比较实用。
【关键字】:管理信息系统、学生管理、应用。
SummaryWith more and more widespread and profound application of information technology in management, the implement of management information system has become mature in technology step by step. Managing information system is a new subject. Enterprise needs existence and development, so enterprise activities should be organized efficiently and organically, which means tightening up the enterprise management and strengthening effective management of any resource (staff, finance, property, etc.) internal the enterprise, and also establishing a management information system fitting in with its own characteristics.This article introduces the detailed process of exploring a management information system under the environment of , utilizing “Top-Bottom” overall plan and a strategy according to “Bottom-Top” application and exploitation. That is to establish a set of effective scheme for student management by computer, through analyzing disadvantages of student management by human resources. This article emphasizes on three sections. The system analysis section of student management information includes feasible analysis, management function analysis.The system design section mainly focuses on system function design and data base design and data number design. And the system realization section has provided several major function , together with the main windows and programs.This economical and pragmatic system has explicit interface, with simple operation.[Keywords] :MIS、student management、 application一系统概述本学生信息管理系统可以说是一个综合性的学校学生管理系统,这它集成了学生学籍管理系统、学生成绩管理系统、学生档案管理系统、学生缴费管理系统等多种功能,因而具有较强的实用性和先进性。
面向对象数据库的设计与实现方法面向对象数据库(Object-Oriented Database,简称OODB)是一种用于存储、管理和操作面向对象数据的数据库系统。
与传统的关系数据库不同,面向对象数据库以对象为中心,将数据和操作进行封装,并支持面向对象的继承、多态等特性。
在本文中,我将介绍面向对象数据库的设计和实现方法。
一、面向对象数据库的设计方法1. 对象模型设计:在设计面向对象数据库时,首先需要进行对象模型设计。
对象模型是对现实世界中的实体进行抽象和建模的过程。
设计者可以使用UML(统一建模语言)或其他建模工具来表示对象之间的关系,包括继承、关联和聚合等。
2. 类定义:在面向对象数据库中,数据存储在对象中,而对象定义了用于访问和操作数据的方法。
因此,设计者需要定义和声明对象的类。
类定义包括属性(数据成员)和方法(行为)。
3. 对象标识和唯一标识符:为了可以唯一地标识一个对象,需要为每个对象定义一个唯一标识符(Object ID)。
对象标识符可以是数字、字符串或其他形式的数据。
在数据库的设计中,需要确保每个对象都有唯一的标识符。
4. 继承与多态:面向对象数据库支持继承和多态的特性。
继承是指一个类从另一个类派生而来并继承其属性和方法。
多态是指同一操作用于不同对象时能产生不同的行为。
设计者需要考虑如何在面向对象数据库中实现继承和多态的功能。
5. 数据一致性:面向对象数据库包含了多个对象,对象之间可能存在关联和约束。
为了保持数据的一致性,设计者需要定义适当的关联和约束条件,并确保这些条件得到满足。
二、面向对象数据库的实现方法1. 数据存储:在面向对象数据库中,数据存储在对象中。
设计者需要选择合适的数据存储和索引结构来支持对象的快速存取。
常见的数据存储结构包括堆、哈希和B树等。
2. 数据查询和操作:面向对象数据库支持丰富的查询和操作语言。
设计者需要为数据库选择合适的查询语言和操作接口。
常见的查询语言包括面向对象的查询语言(如OQL)和结构化查询语言(SQL)。
基于Java的学生信息管理系统的设计与实现 摘要:随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。 面对庞大的信息量需要有学生管理系统来提高学生管理工作的效率。通过这样的系统 可以做到信息的规范管理、科学统计和快速查询、修改、增加、删除等,从而减少管 理方面的工作量。 本系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化 和自动化,其主要任务管理员是用计算机对数据库中的学生成绩信息、课程信息以及学 生自身信息进日常管理,如查询、修改 、增加、删除。另外,学生还可以用该系统查 询自己的成绩,课程的信息等。
关键词:Java,数据库,学生信息管理系统 1. 学生信息管理系统课题的研究背景 随着计算机技术的发展,特别是计算机网络技术与数据库技术的发展,使用人们的生活与工作方式发生了很大的改观。网络技术的应用使得计算机之间通信、信息共享成为可能,而数据库技术的应用则为人们提供了数据存储、信息检索、信息分析等功能,从而使得工作更高效地进行。 在我国,教育是一个影响着国富民强的重要行业,随着改革开放和市场经济的发展根据中国特有的国情发展,教育得到了国家的大力扶持与社会各界的高度重视,从而使教育业向规范性与现代化的方向高速发展,但是同发达国家相比,我国的教育行业的信息技术的应用程度还很低,只有在大城市中发展较早、规模较大的院校中才使用计算机进行大规模操作,从各方面提高工作效率,取得良好的社会和经济效益,而一些新兴的、规模较小的教育机构还没有全部具备这种功能。因此可见,随着我国教育的迅速发展,信息技术在其上的应用会更加地广泛和深入。
学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生信息管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
目录前言 (3)第1章概述 (4)1.1课题开发的背景、目的与意义 (4)1.2可行性分析 (4)1.3系统功能描述 (5)1.4系统运行环境 (5)第2章学生信息管理系统数据库设计 (6)2.1数据需求分析 (6)2.2概念结构设计 (6)2.2.1 实体间的联系: (6)2.2.2 E-R图: (7)2.3逻辑结构设计 (7)第3章学生信息管理系统数据库实施步骤 (9)第4章学生信息管理系统数据库管理及界面设计 (11)4.1功能选择 (11)4.2基本信息的显示 (13)4.3高级搜索 (14)第5章总结 (16)致谢 (17)参考文献 (18)前言随着进入二十一世纪,计算机技术迅速向着网络化、集成化方向发展。
传统的单机版应用软件正在逐渐退出舞台,取而代之的是支持网络、支持多种数据信息(多媒体)的新一代网络版应用软件,而数据库的应用已经渗透到社会经济领域的各个方面。
数据库技术是现代信息科学与技术的重要组成部分,是计算机数据处理与信息管理系统的核心。
有效地运用和利用数据库所具有的强大事务处理功能和数据分析能力,可以实现数据处理、数据安全保障、高效数据检索和信息共享。
数据库对我们今天的各个领域都是不可缺少的一部分,随着各个领域的需求,对数据库中的管理信息系统也要求特别的高,特别是在一些学校中,一个学校对学生的管理是不可少的,如果没有一个统一的管理系统那是很难管理的,因而设立一个学生信息管理系统是很有必要的。
学生信息管理系统(SMIS)是大学信息管理系统建设的重要组成部分,是教务管理工作的核心,是提高教学管理的质量和效益乃至建设知名高水平大学的关键环节。
学生信息处理的电脑化、网络化,也是实现学校管理现代化和信息化的重要内容。
作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理所无法比拟的优点。
例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生档案管理的效率,也是进行科学化、正规化管理,与世界接轨的重要条件。
高校学生管理系统的设计与实现摘要:在Internet快速发展的今天,互联网已成为人们迅速及时获取,发布和传递信息的重要渠道。
学生管理的电脑化、网络化,是实现学校管理现代化和信息化的重要内容,也是方便老师同学们快速查询相关信息的重要工具。
本文首先对现如今的背景及社会需求进行了分析与研究,总结了系统的设计意义,进而对系统的可行性做了研究,并对学生管理系统进行较详细的需求分析,并给出系统详细设计步骤。
系统主要功能包括学生信息的查询,统计,添加,修改,删除等功能。
通过测试分析说明,本系统的开发基本达到预定目标,并具有一定的应用价值。
系统采用目前比较流行的B/S体系结构,前台采用功能强大的面向对象语言C#进行界面设计和代码设计以实现与用户的交流,后台使用SQL Server 2008创建数据库系统,这使得本系统实用性易用比较好,与WINDOWS平台的兼容性也很理想。
本文详细阐述了系统的分析和设计的思想和全过程并给出系统实现的关键技术和具体方法。
最后,本文提供了系统的部分关键的源代码。
关键词:学生管理系统; C#;;数据库;B/S结构;系统构架;信息查询DESIGN AND IMPLEMENTATION OF COLLEGE STUDENTMANAGEMENT SYSTEMAbstract:With the rapid development of the Internet, today the Internet has become an important channel for fast gaining, issuing and transmitting information, and obviously it has been an essential part of our social life. Computerization and network station of student processing are important for realizing modernization and information of school administration, and it also is an important way for searching sufficient information of users.This article first has carried on the analysis and Research on today's background and social demand, summed up the design system, and the feasibility of the system is studied, and the student management system, a detailed analysis of the demand, and the detailed design steps are given system. The main functions of the system, including the student information query, statistics, add, modify, delete and other functions. After testing analysis, the development of the system basically achieves the predetermined target, and has the certain application value.System USES at present more popular B/S system structure, the front desk using powerful object-oriented language c # interface design and code design in order to realize the communication with customers, backstage use SQL Server 2008 create database system, which makes the system is better, and practical easy-to-use WINDOWS platform compatibility is ideal.This paper describes the system analysis and design thoughts and whole process and give the key technology of system implementation and measures. Finally, this paper provides the system of parts of key source code.Keywords:Student Management System; C#;;Database; B/S Structure; System Structure; Information Inquiry目录1 前言 (1)1.1 背景分析 (1)1.2 社会需求 (1)1.3 系统设计意义 (2)2 可行性研究 (3)2.1开发环境可行性分析 (3)2.2 使用技术研究分析 (4)2.3 设计方案研究分析 (4)2.4 系统可行性分析 (5)3 系统需求分析 (7)3.1 用户工作流程 (7)3.2 功能需求分析 (7)3.3 性能需求分析 (8)4 系统概要设计 (9)4.1系统分析 (9)4.2 业务流程 (13)4.3 系统构架 (13)5 系统详细设计 (14)5.1 系统功能描述 (14)5.2 数据库设计 (14)5.3 数据库实现 (20)5.4 用户登录模块 (22)5.5 学生信息模块 (23)5.6 教师管理模块 (25)6 系统测试 (28)6.1 集成测试 (28)6.2 功能测试 (28)6.3 链接测试 (28)6.4 文档测试 (28)6.5 负载测试 (29)6.6 极限测试 (29)结束语 (30)参考文献 (31)致谢 (32)1 前言1.1 背景分析在中国,教育行业是个影响着国富民强的重要行业,随着改革开放和市场经济的发展,教育事业逐渐得到国家的大力扶持和社会各界的高度重视,并迅速向规范性与现代化的方向发展。
学生信息管理系统详细设计
1.系统结构设计
2.数据库设计
-学生表:存储学生的基本信息,如学号、姓名、性别、出生日期等;
-班级表:存储班级信息,如班级号、班级名称等;
-成绩表:存储学生的成绩信息,如学号、科目、成绩等。
3.功能模块设计
-学生信息录入模块:提供学生信息的录入功能,包括学号、姓名、
性别、出生日期等;
-学生信息查询模块:提供学生信息的查询功能,可以根据学号、姓
名等条件进行查询;
-学生信息修改模块:提供学生信息的修改功能,允许修改学生的基
本信息;
-成绩录入模块:提供成绩的录入功能,包括科目、成绩等;
-成绩查询模块:提供学生成绩的查询功能,可以根据学号、科目等
条件进行查询。
4.界面设计
学生信息管理系统的界面设计应简洁、直观。
可以使用面向对象的设
计风格,将相关的功能进行分组,并采用菜单、按钮等交互元素来展示和
操作功能。
在设计界面时,应注重界面的可用性和用户体验,使用户能够
方便地进行操作。
5.安全性设计
6.性能优化设计
总之,学生信息管理系统的详细设计需要考虑系统结构、数据库设计、功能模块、界面设计、安全性设计和性能优化设计等方面,以确保系统的
稳定性、安全性和性能。
学生信息管理系统的设计与实现摘要:随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。
面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。
通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。
关键词:学生信息;管理系统;信息查询;设计中图分类号:tp315 文献标识码:a 文章编号:1007-9599 (2012)23-0000-021 系统概述1.1 操作系统:windows 2000 或windows xp /windows nt server 数据库:microsoft access 2003开发工具:eclips1.2 学生信息管理系统的功能(1)管理学生信息管理所有学生的基本信息,包括添加、修改、删除等;可以根据各种条件查询出需要的信息。
(2)管理课程信息。
管理所有课程的基本信息,包括添加、修改、删除等;可以根据各种条件查询出需要的信息。
(3)管理选课与成绩。
根据学号进行选课,登记所选课程的成绩;可以根据学号查询出选课信息与成绩。
本系统采用java语言作为开发语言,java语言具有面向对象性,简单便捷性,平台无关性,运行安全性,系统移植性,动态扩展性,程序高性能能特点。
图形用户界面是为应用程序提供一个图形化的界面,通过它用户和程序之间可以方便地进行交互,完成应用程序使用中的数据输入与输出显示等操作任务。
java语言提供了大量支持gui设计的类。
系统选用microsoft access 2003作为后台数据库。
应用程序与数据库的通信连接由jdbc 实现。
2 系统结构设计根据对系统进行的需求分析,本系统将分为4个模块:学生管理:管理学生的基本信息,包括个人信息的添加、修改、删除,以及选课信息的添加。
课程管理:管理课程的基本信息,包括课程信息的添加、修改和删除。
成绩管理:管理学生选课的成绩信息,包括成绩的登记与修改。
信息查询:查询已经登记的信息,包括学生的基本信息、课程的基本信息与成绩信息。
谈数据库技术在CMS中的应用摘要:本文提出了一个以开发大学课程管理系统(cms)为原型,并把使其运行在windows操作系统为目标的项目。
描述了该原型系统如何应用面向对象数据库开发技术来设计和实现的,并对该技术的未来做了个展望和总结。
关键词:cms 数据库技术1 项目背景的介绍1.1 课程管理系统课程管理系统是把所有课程资源在线整合在一起的软件包,学校里的教师和学生都可以通过他提供的界面方便地访问这些资源。
课程管理系统又可理解为多种实际的系统理念,如可视化学习环境(virtual learning environments)和学习管理系统(learning management systems)等。
但课程管理系统技术并不局限于这些系统理念。
下面对这两种系统理念做一个简单介绍:1.1.1 可视化学习环境可视化学习环境是一个为方便教师的教学环境的系统。
使用可视化教学环境,一个教师能够管理所有的教学课程,方便地跟踪每个学生的学习过程。
可视化学习环境技术发展了许多年,在这个研究过程中,出现了许多系统技术如:综合学习系统(ils)、计算机辅助教学(cai)、基于计算机训练(cbt)、计算机管理教学(cmi)、交互式多媒体教学(imi)、增强技术学习(tel)、基于技术学习(tbl)和基于网页训练(wbt)。
这些技术为可视化学习环境提供了许多重要的理念,它们中的大部分至今还在使用。
1.1.2 学习管理系统学习管理系统是一个使教师管理所有的课程内容并能将之传递给学生的一个软件包。
大部分的学习管理系统是基于网页的,教师和学生可以在任何时间任何地点访问和管理课程内容。
在许多场合,学习管理系统就被称为课程管理系统,课程管理系统增强了课程管理方面的功能,学习管理系统则适合任何计算机辅助教学领域。
1.2 面向对象数据库(oodb) 课程管理系统最主要的功能是管理相关的课程信息。
这些课程信息包括学生和教师的档案记录,课程内容和课程所用到的资料。
1 引言为方便对学校日常工作进行高效的管理,设计此数据库以提高学校的管理效率。
随着现代科技的高速发展,设备和管理的现代化,在实际工作中如何提高工作效率成为一个很重要的问题.而建立教学管理信息系统是一个很好的解决办法。
1.1课题背景随着信息技术的飞速发展,信息化的大环境给各成人高校提出了实现校际互联,国际互联,实现静态资源共享,动态信息发布的要求[1];信息化对学生个人提出了驾驭和掌握最新信息技术的素质要求;信息技术提供了对教学进行重大革新的新手段;信息化也为提高教学质量,提高管理水平,工作效率创造了有效途径。
校园网信息系统建设的重要性越来越为成人高校所重视。
1.2课题意义利用计算机支持教学高效率,完成教学管理的日常事务,是适应现代教学制度要求、推动教学管理走向科学化、规范化的必要条件;而教学管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,不允许出错,如果实行手工操作,每月须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行教学管理工作,不仅能够保证各项准确无误、快速输出,而且还可以利用计算机对有关教学的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点。
[2]例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高员工工资管理的效率,也是教学的科学化、正规化管理,与世界接轨的软件.[3]在软件开发的过程中,随着面向对象程序设计和数据库系统的成熟,数计成为软件开发的核心,程序的设计要服从数据,因此教学管理系统的数据库设计尤其重要。
本文主要介绍教学管理系统的数据库方面的设计,从需求分析到数据库的运行与维护都进行详细的叙述。
2 系统分析2。
1 需求分析1.需求分析的任务需求分析的任务是调查应用领域,对应用领域中的信息要求和操作要求进行详细分析,形成需求分析说明书。
重点是调查,收集与分析用户在数据管理中的信息要求,处理要求,数据的安全性与完整性要求。
面向对象技术在数据库系统设计中的应用浅析摘要:基于面向对象技术的基本思想和开发过程,介绍了面向对象技术的实现方法。
结合具体实例对面向对象技术在数据库系统结构设计和详细设计中的应用进行了详细的探讨,利用面向对象的数据库系统分析和设计方法,使用uml工具建立了具体的对象模型,给出了一种比较通用的数据库系统开发模式。
使用该模式设计的系统重用性好,且易于维护,从而有效提高了数据库系统的开发质量。
关键词:面向对象技术数据库系统设计对象模型一、面向对象的有关基本概念(一)对象(object)、方法(method)及消息(message)客观世界的问题都是由客观世界中的实体及其相互之间的关系构成的。
我们将客观世界中的实体抽象为问题空间中的对象。
由于我们需要解决的问题不同,我们面向的对象也就不同,因此对象是不固定的。
一本书可以是一个对象,一家图书馆也可以是一个对象。
从动态的观点看,对象及其操作就是对象的行为,一个对象的通常定义是:对象是对一组信息及其上面的操作的描述。
私有数据结构和处理,这些处理又称为操作(operation)或方法(method),包括控制和过程。
其中私有数据表示了对象的状态,该状态只能由私有操作来改变,每当需要改变对象的状态时,只能由其它对象向该对象发送消息。
消息是用来请求对象执行某一操作或回答某些信息的要求,消息统一了数据流和控制流,程序的执行是靠在对象间传递消息来完成的。
表示消息的形式是消息模式。
对同一消息模式的不同消息,同一对象所作的解释和处理都相同,但是会由于对象状态的不同而导致操作结果不同。
一个消息模式定义对象的一种处理能力,所有消息模式及相应于消息模式的处理能力,定义了对象的外部特征。
(二)类(class)、实例(instance)、继承性(inheritance)在客观世界中,有许多具有相同特征的事物,如:小轿车、大客车、卡车等,可以归类为机动车。
从对象观点看,具有共同的属性、共同的操作性质的对象的集合就是类,而单个对象则是对应类的一个实例。
计算机教育・・・・・. 本栏目责任编辑:王力 用面向对象数据库系统管理高校学生信息的探讨 吴旭.魏德志 (集美大学诚毅学院,厦门361021)
摘要:本文针对当前高校用关系型数据库管理学生信息的不足,提出使用面向对象数据库来管理学生信息的新模式.探讨了利用面 向对象数据库管理学生信息的优势,使得在一个OODBMS里所保存的学生信息得到最大程度的丰富和扩展,并对学校和社会利用在该 模式下保存的学生信息可能采用的方式提出构想 关键词:面向对象数据库:学生信息:数据模型 中图分类号:TP311 文献标识码:A 文章编号:1009—3044(2007)13—3284_02 OODBMS Approach to the Management of Students Jnformation of Higher Education WU Xu.WEI De—zhi (Chengyi Co ̄ege ofJimei University,Xiamen 361021,China) Abstract:In response tO the present 1ack of management of students information by means of Nexus-based Da ̄bank in Hi er Education, a new mode,OODBMS,is brought forward in the paper,which highlights its advan ̄ges in information management,ensuring the stored infor- mation could be enriched tO the maximum, and offering propositions for schools and other social orgnizations tO make possible use of the scu— dents information stored in such mode. Key words:OODBMS;student information;data model
1引言 在高校教学环境中.有关学生的数据信息是复杂多样,变化 万千的 以一名学生为例.除了具备学生的基本属性比如姓名、性 别、民族、籍贯、专业等,还具有考试、入党、参加社团、获得奖学 金、发明创造等许多动态属性信息。且随着在校时间的增加,这些 数据都在不断的变化。而目前大多数高校所使用的关系型数据库 中大多没有保存这部分动态属性信息。学生在学校期间会产生何 种动态信息及动态产生的信息的数据类型是无法提前预知的,这 决定了数据库无法在设计之初就包含完备的与学生信息相关的 表和字段,加上关系型数据库本身的特性决定了其在使用过程中 如果不断修改结构必然要付出无法承受的高昂代价,所以也不可 能在使用中不断修改原有的数据库设计~增加或删除数据库中 的表、字段、主外键联系等。因此,目前大多数高校应对上述动态 信息存储与管理的手段多为将它们以文本的方式存储于Word或 Excel当中。但这种信息管理方式甚至是停留在早期的文件系统 阶段.属于第一代数据库的管理方式。由于文件之间相互独立,缺 乏联系,造成信息的离散,因而无法像在关系型数据库中那样实 现信息的动态实时查询与管理。除了上述的局限,还应当看到在 多媒体时代,伴随学生产生的多媒体信息也越来越丰富,比如为 应对英语和计算机之类的等级考试由学校所采集的学生数码照 片.为门禁、考勤等系统所采集的学生的指纹数据,甚至为某个学 生获奖而录制的一段采访视频等。而关系型数据库并不擅长存储 与管理这些多媒体数据。并且随着时代的发展,伴随着学生必然 还将产生更多复杂的数据类型,由于传统数据库的数据结构比较 简单.不能支持新的数据类型和嵌套、递归的数据结构从而在未 来学生信息的存储与管理上更是显得力不从心。 面向对象数据库系统(OODBMS)的整体结构不同于传统 DBMS 它采用对象层次的存储结构、存取方法和继承性的实现方 法.用户定义数据类型和方法的处理策略,必要的版本控制和友 好的用户界面,是种全新的DBMS。概括的说它就是一个将面向对 象的程序设计语言中所建立的对象自动保存在磁盘上的文件系 统。它既支持传统数据库系统的全部功能,又支持面向对象数据 模型。使用面向对象数据库存储学生信息时,它不再像传统关系 型数据库那样分类存储,而是把每个学生当作一个独立的对象, 按照现实的状态进行信息存储,这样管理员就可以随时为学生添 加属性信息了。 2学生对象数据模型的建立 建立良好的数据模型是实现数据库日后具有较好的管理与 维护性能的极其重要的一个因素,下面将分别介绍面向对象数据 类型和学生对象数据模型的建立 2.I面向对象数据类型 基于ODL(Object Data Language,即对象定义语言)描述的面 向对象数据模型使用的数据类型有: (1)原子类型:包含整形、浮点型、字符型、字符串、布尔型和枚 举型。 (2)结构类型:用Street N{T1 F1,12 F2,……Tn Fn}表示,其中 Street是关键字,N是结构名,Ti是数据类型,一般是原子类型,Fi 表示域名 (3)聚集类型:~般由类型相同的原子类型或结构类型的元素 聚集而成,包含集合,包,列表和数组。 (4)接口类型:即类类型或对象类型。 2.2学生对象数据模型 用ODL语言描述的学生对象模型如下: . interface student (key studentCode1//学号作为主键 { //基本属性信息 attribute string studentName; //学生姓名 attribute string studentSex; //学生性别 …… /,动态属性信息 attribute hash—map properties; //hash—map的可扩展性保证 了属性的动态加入 //它创建的是个属性集合 //基本属性相关的方法 ‘ string get studentNameO; //读取学生姓名 void set studentName0; //写入学生姓名 //动态属性信息相关的方法 void add_pmperity(string name.object value);//添加学生属性 名和属性值 object geLpmperity(string name); //读取学生指定的某 个动态属性 //其它相关 . ……}; 上述中的hash_
map是基于hash table(哈希表)的,其基本原
理是:使用一个下标范围比较大的数组来存储元素。可以设计一 个函数(哈希函数.也叫做散列函数),使得每个元素的关键字都
收稿日期:2007-05—18 作者简介:吴旭.集美大学诚毅学院,助理实验师,厦门大学软件工程专业研究生。
284 电脑知识与技术
维普资讯 http://www.cqvip.com 本栏目责任编辑:王力 ・・・・・・计算机教育 与一个函数值(即数组下标,hash值)相对应,于是用这个数组单 元来存储这个元素;也可以简单的理解为,按照关键字为每一个 元素“分类”.然后将这个元素存储在相应“类”所对应的地方.称 为桶。由它创建的是个属性集合,因此学生的属性可以动态加入 3学生多媒体信息的存储 如上所述,学生的多媒体信息包括数码照片,指纹,录音,视 频等等。在多媒体应用中,多种媒体有着不同的数据结构与操作 要求,也有着不同数据类型要求。它们之间有着复杂的语义联系 并构成一个整体。多媒体应用的这些要求也正是面向对象数据库 所具有的特点。在面向对象方式中多媒体数据按媒体组成类,如 图像类,动画类.声音类,视频类等 多媒体类中一个媒体就是一 个类,它包括该媒体的数据结构及相应操作。每个媒体的类是该 媒体数据与操作的封装体,但在很多情况下,还需要有若干子类 及合成类加以补充。 现举例指纹信息的存贮来说明具体实现。首先使用专用的指 纹采集设备采集指纹,并在系统中对指纹图像进行有效处理并提 取图像特征。在输人数据库中前,该图像以二进制位流的形式保 存在图像文件中.这个文件内容就是图像的原数据。接下来要做 的就是为图像特征信息设计恰当的数据模型,将其抽象为对应的 指纹类。使用指纹类根据不同的指纹就可以创建具有不同属性值 的指纹对象.再由数据库系统完成保存。这样指纹信息就得以存 储了。同理,其它类型的多媒体的信息也按照该原理实现存储。 4面向对象数据库在学生信息管理上的优势 4.1碴询的优势 在关系型数据库中存放学生信息,得先把学生信息按范式标 准拆散.放人各个表,查询的时候再用SQL语句连接各个表取出 信息,而无法直接从上层数据查到对应属性。这就好像开一辆车 到车库,然后把车拆散了在各个位置存放零件,等到要开出去的 时候再组装起来。比如在关系型数据库中要查找名叫“张三”的学 生的班级属性,依据通常的表设计,学生的姓名在student(学生 表)表中.而student表中并不保存班级的具体名字,而是保存一 个叫做班级代码的属性.比如班级代码属性值为2。有另外一张表 class(班级表).由该表负责保存班级名称和班级代码之间的对应 关系,假设班级表中班级代码为2对应的班级名称为计算机0011 班。则需要书写查询代码如下: select /,显示班级名称 class.className from student ,/连接班级表和学生表,学生表中的班级代码与班级表中的 班级代码相同 inner join class on class.classCode=student.classCode where student.studentName=“张三” 因此可见.一旦需要查找某个属性,开发者就不得不写入一 些代码来实现需求,当表联系比较复杂的时候查询代码也将变得 复杂 而在面向对象数据库中,用户定义出对象以后,OODBMS可 以自动描述出该对象的功能,应用及与其他对象的联系。按照该 原理.上述查询例子在面向对象数据库中,只需要查找到叫“张 三”的这名同学的学生对象,那么同时就可以得到该学生对象的 所有功能和属性。 4.2更改数据的优势 在关系型数据库中,如果想增加学生的社团信息,就需要在 数据库中增加社团表,以社团代码为主键.并在原有的学生表中 增加社团代码字段,增加外键一社团代码。这种修改对已经保存了 大量学生数据的数据库来说是很大的。而在OODBMS中,所有数 据都以对象的形式保存。要增加学生的社团信息.只需要用学生 对象模型中的方法add. , )就可以.properity(string name object value