《计算机信息管理专业本科毕业设计(共24页).doc》由会员分享,可在线阅读,更多相关《计算机信息管理专业本科毕业设计(共24页).doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上学籍管理子系统的开发摘要:本文以某校的学籍管理子系统的开发为背景,论述了管理信息系统的概念、结构及系统开发的基本原理和方法。全文共分为绪论、管理信息系统综述、开发方法的选择、系统规划、系统分析、系统设计、系统实现、系统运行与维护等七章。详细闸述了系统分析、系统设计的技术和应用,讨论了结构化生命周期法和原型法这两种开发方法的技术。关键词:管理信息系统 学籍管理子系统 系统开发第一章 绪论管理工作的成败,取决于能否作出有效的决策,而决策的正确程度则取决于信息的质量。科学技术的进步和生产的发展使人类知识总量的增长速度不断加快。另一方面,生产社会化趋势的扩大和社会对产品需求的
2、多样化使得企业在生产经营活动中涉及的内部和外部信息量迅速膨胀起来。面对激烈的市场竞争,对这些信息进行收集、加工、传递等过程的时间性和准确性也提出了更高的要求。这一切都使传统的、以手工作业为基础的信息系统陷入了机构日益庞大、效率日益降低的困境。电子计算机的出现为摆脱这种困境找到了出路。当1946年的第一台电子计算机问世以来,其发展速度之快,真可谓突飞猛进,日新月异。 运筹学和现代控制论的发展,使许多先进的管理理论和方法应运而生,而这些理论和方法又都因为计算工作量太大,用手工方式根本不可能及时完成。只有现代电子计算机的高速准确的计算能力和海量存贮能力,才能为这些理论从定性到定量方面指导决策开辟了新
3、的局面。另一方面,计算机技术与通信技术的结合,大大地促进了现代化信息技术的发展。 电子计算机主要用于科学技术计算方面、生产控制方面和管理方面。据统计,世界上发达国家都十分重视电子计算机在管理中的应用,许多企业将全部投资的10%以上用于计算机,而其中70%以上是用于管理方面的。管理方面应用电子计算机已经发展成为专门的管理信息系统(Management Information systems,简称MIS)。我国自1983年大力推广微型计算机应用以来,在管理信息系统领域,无论在理论方面,或者在实践方面都有了很大的发展。1986年2月国务院批准建设了国家经济信息系统,全国从中央到省、市地方都陆续成立了
4、信息中心,各行各业应用电子计算机的热情普遍高涨,目前已从单项业务的信息管理,迅速向综合的管理层和决策层的信息管理发展,应用水平日趋提高,以三金工程为代表的国民经济信息化工程也正在加速建设。谈到管理信息系统,自然离不开数据库的支持。数据库技术,是计算机技术的一个重要分支。由于数据库具有结构化、最小的冗余度、较高的程序与数据独立性、易于扩充、易于编程、多用户可以安全地共享数据等优点,当前各种管理信息系统都是建立在数据库之上的。说到底,管理信息系统是一个集计算机技术、信息技术、数据库技术、现代管理理论为一体的综合性系统。可以说,管理信息系统是一个集计算机技术、信息技术、数据库技术、现代管理理论为一体
5、的综合性系统。建立这样一个复杂的系统是需要付出昂贵代价的,因为它是一个资金密集型、劳动密集型、智力密集型的项目。我国还面临一系列的问题,但只要我们扎扎实实地作好建设管理信息系统的基础性工作,多多注重人材的培养,就一定能够建立起比较实用的应用系统来,实现我国信息化建设的目标。第二章 管理信息系统的综述2.1概述管理信息系统是先进的科学技术和现代管理相结合的产物。建立以计算机为主要手段的管理信息系统,已经成为现代企业、政府部门等各类组织提高自身素质、实现组织目标的战略措施。但是,国内外历史事实告诉人们,管理信息系统建设的道路坎坷,许多已建系统带来的效益,远远不及预先的承诺和期望。系统建设中耗资巨大
6、、效益难望、或半途而废、或使建设单位背上沉重包袱等情况时有发生。因此,系统建设者必须深刻理解系统建设工作的复杂性,正确认识其特点和规律,并且运用科学的建设方法。这对成功地建设管理信息系统,至关重要。2.2管理信息系统建设工作的复杂性2.2.1、建设环境的复杂性现代企业、政府部门等组织一般来说来结构复杂。管理信息系统建设通常要涉及到组织内部各级机构、管理人员及组织面临的外部环境。系统建设者必须十分重视、深刻理解组织面临的内、外环境及发展趋势,考虑到管理体制、管理思想、管理方法和管理手段的相互匹配、相互促进,考虑到人的习惯、心理状态及现行的制度、惯例和社会、政治因素。2.2.2、用户需求的多样性管
7、理信息系统的最终用户是各级各类管理人员。然而,一个组织内各类机构和管理人员的信息需求不尽相同,系统建设者面对这样复杂的目标集,必须寻求使各方都比较满意的方案。2.2.3、建设内容的复杂性管理信息量大面宽,形式多样、来源繁杂,信息内容和处理要求又涉及到广泛的学科和事业领域。管理信息系统要实现一个组织的信息系统的综合处理以支持各级管理决策,必是一个规模庞大、结构复杂、具备多种功能、实现多个目标的大系统。2.2.4、技术手段的复杂性现代的先进技术成果,如:计算机硬件和软件技术、数据通讯与网络技术、各种信息采集与存储、各种控制与决策方法、建模与仿真技术,以及人工智能技术等,都是进行管理信息系统建设,实
8、现系统各种主要功能的技术手段。2.2.5建设资源的密集性管理信息系统的建设,需要巨额投资,是一种资金密集型的建设项目;由于规模大、建设内容复杂,主要工作特别是软件开发需用大量人工,因而也是劳动密集型项目;由于上述建设环境、建设内容、所用技术手段的复杂性,系统建设的各项工作都需要大的智力劳动,所以说,管理信息系统建设项目又是智力密集型或知识密集型的。2.3管理信息系统在学校建设工作的复杂性首先,一所大学包括的院系有很多,管理信息系统建设必须要涉及到组织内部各级机构的管理人员所面临的外部环境。其次,各院系的各级各类管理人员的信息要求不尽相同,管理信息系统必须满足各层次管理人员的需要。再次,一所大学
9、规模很大,开发这样一个管理信息系统需要长时间的调查,必须深入组织内部,使开发出来的管理信息系统用之所需。第三章 开发方法的选择3.1系统建设方法的发展概述本世纪后半叶,尤其是80年代以来,社会经济和科学技术的发展迅速,各类社会组织、特别是企业面临的环境复杂多变、竞争日趋激烈。国际社会的信息化浪潮一浪高过一浪,管理信息建设需求紧迫,先后提出了结构化生命周期法、原型法、面向对象的方法等。3.2结构化生命周期法简介“结构化”一词在系统建设中的含义是用一组规范的步骤、准则和工具来进行某项工作。基于系统生命周期概念的结构化方法,为管理信息系统建设提供了规范的步骤、准则与工具,以弥补早期方法的不足。结构化
10、方法的基本思路: 阶段 活动 任务 产品标准工具技术方法结构化方法的主要原则,归纳起来有以下四条:(1)用户参与原则(2)“先逻辑,后物理”的原则(3)“自顶向下”的原则(4)工作成果描述标准化原则其步骤大体分为以下步骤: (1)系统规划 战略规划 需求分析 资源分配(2)系统开发 系统分析 系统设计 系统实施(3)系统运行与维护(4)系统更新3.3快速原型法简介: 80年代发展起来的原型法(Prototyping Approach)是通过快速建立并供用用户使用的原型(Prototype)来激发用户的信息要求。原型法加速了系统开发中用户需求的获取过程,有助于解决一些规模不大但不确定因素较多的管
11、理决策问题,提高了系统开发效率和有效性。原型法的基本思想:决策者和研制者在一个小而重要性问题上取得一致意见,然后开发和设计一个原始的系统以支持所需要的决策,在使用一个短时期后,如几周后,对系统进行评价、修改、并增加、扩展,这样循环几次,直到发展成为一个相当稳定的系统。原型设计法示意图:确定用户最初要求研制系统原型修改、完善系统原理评价、使用系统原理 N 用户满意? Y建成系统产品采用原型法要经历以下四个阶段:(1)确定用户最初要求(2)研制系统原则(3)使用、评价系统原则(4)修改和完善模型3.4本系统开发选择 基于上述两种开发方法的优劣,本系统利用软件工程化思想和方法,两种方法相结合,而总结
12、上是结构化生命周期法。第四章 系统规划规划,一般是指对较长时期的活动进行总体的、全面的规划。现代社会组织,例如:学校,它们结构和活动内容都很复杂,实现一个组织的信息管理计算机化需要经过长期努力,因而必须对一个组织的管理信息系统进行规划,根据组织的目标和发展战略以及管理信息系统建设和客观规律,并考虑到组织面临的内外环境,科学地制定管理信息系统的发展战略和总体方案,合理安排系统建设的进程。4.1系统的初步调查: 数据库设计所要的解决的问题是:对于一个给定的应用领域,设计优化的数据库逻辑和物理结构,使之满足用户的信息管理要求和数据操作要求,有效地支持各种应用系统的开发和运行。数据库设计的目标是为用户
13、和各种应用系统提供一个高效的运行环境。而数据库的设计可以视为如下的优化问题。(1)计算机的软硬件环境;(2)数据库管理系统的能力;(3)用户的操作要求与信息要求;(4)完整性和安全性约束。经过调查分析,本设计组可以完全解决以上优化问题:(1)开发采用Microsoft 的MS SQL Server2000是当今社会的主流数据库管理系统,它的稳定性和易用性是为世人所称道的,最重要的一点是它是当今世界最大的软件设计厂商Microsoft数据的产品。因此,他同Windows NT,Windows2000等操作系统的结合是最完美的。所以,在数据管理系统上,我们采用了MS SQL Server2000。
14、而在数据库开发工具上则采用了SYBASE 公司的PowerBuild7.0,Sybase的PowerBuilder以其高效的开发环境,杰出的数据库开发特性,组件的创建和与其他Sybase开发工具的有机结合,从一个4GL的RAD开发工具,步入了企业级的开发工具市场。它的数据窗口作为一项专利,使得许许多多的程序员大大地减轻开发的工作量。Windows2000作为杰出的32位操作系统,它的稳定性,安全性完全可以满足系统的要求。(2)采用的数据库管理系统:MS SQL Server2000是SQL Server家族的最新产品,SQL Server2000 扩展了 Microsoft SQL Serve
15、r 7.0 版的性能、可靠性、质量和易用性。Microsoft SQL Server 2000 增加了几种新的功能,由此成为大规模联机事务处理 (OLTP)、数据仓库和电子商务应用程序的优秀数据库平台。而我们做的学籍管理系统,数据来源就是某大学的学生信息成绩,大概有一万名学生,数据不算很多,用MS SQL Server2000完全可以很好地处理这些数据。(3)在用户的操作要求方面:操作数据库的用户基本上是大学的教师,有较高的文化水平和计算机操作能力,他们对整个学籍管理程序比较熟悉。在信息要求方面,由于学校的学生信息比较容易管理,而且信息更新比较快,同时信息的查询是比较频繁的。设计的系统必须能对
16、查询进行有效的处理。(4)在完整性和安全性方面:学校的学生信息是在变化的,在更新和删除方面,要做到更新及时删除完整。安全性方面则分清操作员的权限问题,限制非授权的存取,某大学学籍管理系统是被多个用户共享使用,每个用户对数据库的存取权是有限的。管理员可以对用户进行管理。而用户当中的教师可以对数据库进行录入,修改,删除。而用户中的学生则只能对自己的数据进行查询操作。同时做好数据库的数据恢复,设计一个系统恢复子系统。这个子系统在系统的硬件或软件发生故障时,能保证数据库的正确性。系统恢复子系统的关键是在系统的硬件或软件故障修复后,能够把数据库恢复到正确的状态。4.2本次设计的学籍管理子系统采用的“客户
17、/服务器”体系简介随着计算机网络的信息服务的不断深入发展,传统的联机远程终端和以文件服务器为核心的计算机网络结构已经不能满足实际需要。取而代之的是客户/服务器(Client/Server)模式,该模式以其高性能和高可靠性等优点迅速地被广泛应用起来。客户/服务器是在网络基础上,以数据库管理为后援,以计算机为网上工作站的一种系统结构。该结构的关键在把网络环境上的数据库存取和应用程序一分为二,分别由网上的数据库服务器和网上客户来执行。虽然某大学学籍管理系统客户/服务器是建立在LAN的基础上,但它比以往的文件服务系统有了很大的改进。首先,它消除了不必要的网络传输负担;其次,它可以使作为数据库服务器的计
18、算机被高度优化,以适应数据处理的需要。相比之下以往的宿主式计算机系统除了数据处理之外,还要承担应用的工作,从而降低了工作效率。另一方面,由于作为客户的计算机如今主要承担应用方面的专门任务,这就有可能使其高度优化。由此可见,客户/服务器体系在网络连接上和设备上并没有什么变化,只是改变软件应用的系统的配置方法,从而明显地改变了整个系统的运行性能,有效地增强了系统的可扩充性和可维护性。客户/服务器已经能够应用于复杂的网络上,并使之能够更有效地进行选择、检索、索引排序等数据处理。作为一种高级的分布式计算机环境、客户/服务器有足够的能力把处理后的结果(不是整个文件)通过网络传输出去,并根据用户需求灵活地
19、配置各种大、中、小型计算机系统。整个客户/服务器体系分为三部分。(1)客户:发送请求及处理返回结果,显示和控制应用工作环境及用户界面,完成数 据合理性校验。显示报告和使数据表现图形化;(2)服务器:处理客户请求,为客户分析数据并返回结果或动作。一个服务器本身有时又可以成为另一个服务器的客户。(3)网络:实现客户和服务器的之间的透明连接;第五章 系统分析5.1学籍管理子系统的详细调查一个大学的学生信息是庞大的,其信息量不亚于许多大型的数据库系统。在我设计的学生管理系统中,通过调查得知大学的院系众多,而且各院系下又有众多的专业,各个专业又有众多的班级。班级里又有众多的学生。因此学籍管理系统的管理是
20、分层次的。最低层的数据是每个学生具体的信息,如个人信息,家庭信息,成绩信息等。而这些信息都是从最初的院系里,一级一级地检索出来。由于一个在校的学生的信息是在他们入学以后就建立起来的,因此在,新生入学的时候,就可以录入学生的信息,然后再分班。在以后的学习过程中,信息在不断的改变,增加。设计的学籍管理系统能够动态地对学生信息进行管理。在成绩管理方面,每个学期,都要录入学生的成绩,对数据进行整理,然后通过另一个设计小组的Web服务器把数据在网上发布,供学生查询。在代码管理方面,在众多的学生信息中,有许多的信息是重复的,如一个班的学生,他们所属的院系,专业,班级都是相同的,如果把这些数据都录入数据库,
21、就会浪费很大的空间,同时数据库的性能也会下降。因此单独建立代码表、把学院名称,专业名称用代码表示,这样当一个院系或专业改变名称的时候,不必依次改变每个学生的信息,只要改变学院、专业代码表就可以了。这样在数据库的维护方面也很方便。通过我的设计,使学校在管理学生方面能够实现自动化,网络化。学生的信息更新将更加及时。在系统的设计方面,采用服务器/客户模式,多个客户可以访问同一个服务器的数据,这样数据的集中性就较合理,同时数据的完整性也可以得到保障。在学籍管理系统中,每个数据库文件的存储结构、存取方法等详细信息存储在数据字典中。存取数据库时,用户只需要引用数据的抽象概念表示,数据库管理系统负责从数据字
22、典中提取数据库文件的存储结构和存取方法细节,把用户引用的抽象概念表示转换为物理表示,完成用户的存取要求。5.2系统分析的主要工具5.2.1数据流图(DFD:Data Flow Diagram) 数据流图就是组织中信息运动的抽象,是管理信息系统逻辑模型的主要形式。以数据关联图和数据顶层图为主要的组成部分。首先,对学籍管理的总体情况,划分系统边界,识别系统的数据来源和去向,确定外部实体,得出系统关联图:学籍管理系统管理人员学生家长 管理要求 查询要求 管理结果 查询结果数据流图说明 输入体输入输出接受对象管理人员系统管理员系统管理要求系统管理结果管理人员数据操作员操作命令操作结果数据操作员数据录入
23、员录入要求录入结果数据录入员数据查询员数据查询要求查询结果数据查询员查询人员学 生查询要求查询结果学 生 家 长家 长 系统管理员是整个系统的拥有者,拥有对系统的一切权利,他能对整个系统进行管理,包括数据管理,用户管理,权限管理。由于系统管理员对数据库的安全起很大的作用,所以系统管理员对数据库应该很熟悉,同时对系统的结构也应该很了解,计算机操作水平高,这一类人员占整个系统的人员不应该超过千分之一,甚至更少。数据操作员是整个系统的维护者,他虽然不能对整个系统进行管理,但是,系统的数据基本上是由他来维护,由于数据的安全性和完整性要得到保证,所以不是任何人都能对数据库进行修改,删除,更新。只有数据操
24、作员才能对数据的数据进行检验,和操作。因此数据操作员对学生工作比较熟悉,而且对各种数据的含义应该了解。这一类操作员可以不必了解整个系统的结构。但是要有一定的计算机操作能力,这一类人员占整个用户群的百分之十。数据录入员是负责数据录入的群体,他们对数据进行录入,但是不能对数据进行修改,删除等,在每年新生入校时,他们负责录入新生的信息,同时在每一学期结束时,他们负责录入学生这一学期的学习成绩,在录入完毕以后,由数据操作员对数据的完整性和正确性进行校正,如果有错误,由他们进行修改,删除,更新。而不是数据录入员,数据录入员占整个系统用户的百分之二十。查询用户是整个系统没有操作权限的人员,他们分别由学生,
25、学生家长,教师组成。这些用能进行信息,成绩查询;但是又不是什么信息都能查询,当一个数据库系统被多个用户共享时,每个用户对数据的存取是有限的。并非每个用户都可以随心所欲地存取数据中的任何信息。如,一个学生的基本信息和成绩信息只允许学生自己查询或者是学生的家长获得学生授权而进行查询,其它的学生就不能查询到其他人的信息,因为这涉及到学生的个人隐私。同样的本系的老师只能查询到本系的学生信息和成绩,所不同的是学生只能查询到个人的信息而老师则可以查询到整个班级甚至是整个院系的学生信息。因此学生和老师的查询权限不同。 然后划分几个主要的信息管理功能,并明确各功能之间的联系,绘制出数据流图的顶层图。管理人员查
26、询人员用户身份验证系统1处理管理要求2处理查询要求 3 数据库文件 用户文件 管理结果管理要求 有效的管理条件查询要求 查询结果有效的查询条件 无效 输入 数据库文件 5.2.2数据字典(简称DD) 数据词典的作用是给数据流图上每个成分以定义和说明。换句话说,数据流图上所有成分的定义和解释的文字集合就是数据词典。上面讨论的数据流图只是给出系统逻辑功能的一个总框架而缺乏详细、具体的内容。数据词典对数据流的各种成分起注解、说明作用。这里列出了某大学学籍管理系统数据字典1、学生在校基本信息表(stu)编号列名含义类型长度精度小数位说明1.1Stuid学号Char1000主键,外键1.2Name姓名C
27、har10001.3Xycode院系代码Char400外键1.4Zycode专业代码Char400外键1.5Grade年级Char4001.6Class班级Char4001.7Deleted删除标记Char1000未删除,1已删除2、学生情况表(stuinfo)编号列名含义类型长度精度小数位说明2.1Stuid学号Char1000主键2.2Sex性别Char1000男,1女2.3Birthday出生日期Datetime8002.4Mzcode民族代码Char400外键2.5Dqcode籍贯代码Char600外键2.6Prsnid身份证号Char20002.7Party政治面貌Char10002
28、.8Homeaddr家庭地址Varchar50002.9Deleted删除标记Char1003、课程表(lesson)编号列名含义类型长度精度小数位说明3.1lessonid课程号Char1000主键,外键3.2Lesname课程名Char50003.3Timers学时数Char4003.4Credit学分Char2003.5Smstm开课学期Char1003.6Teacherid授课教师号Char10003.7Deleted删除标记Char1004、成绩表(score)编号列名含义类型长度精度小数位说明3.1Stuid学号Char1000主键3.2lessonid课程号Char1000外键3
29、.3Score成绩Real 4243.4Repscore1重修成绩1Real4243.5Repscore2重修成绩2Real4243.6Repscore3重修成绩3Real4243.7Repscore4重修成绩4Real4243.8Deleted删除标记Char105、照片表(photo)编号列名含义类型长度精度小数位说明4.1Stuid学号Char1000主键4.2Photo照片Image16004.3Deleted删除标记Char1006、院系代码(xycode)编号列名含义类型长度精度小数位说明5.1Xycode院系代码Char400主键5.2Department院系名称Varchar2
30、0005.3Deleted删除标记Char1007、专业代码(zycode)编号列名含义类型长度精度小数位说明6.1Zycode专业代码Char400主键6.2Major专业名称Varchar20006.3Yxcode所属院系代码Char400外键6.4Deleted删除标记Char1008、民族代码表(mzcode)编号列名含义类型长度精度小数位说明7.1Mzxh民族序号Char10007.2Mzmc民族名称Varchar50007.3Mzdm民族代码Varchar1000主键7.4Deleted删除标记Char100这样,用MS SQL Server2000建表的工作就完成了,可以将表添加
31、到数据库关系图,对其结构进行编辑或使其与关系图中的其它表相关。既可以将现有数据库表添加到关系图,也可以插入尚未在数据库中定义过的新表。添加现有表意味着想使其出现在关系图中的表已存在于数据库中。如果将一组表添加到关系图,则表之间存在的任何关系也将添加到关系图中去。第六章 系统设计 管理信息系统设计阶段的主要目的是系统分析阶段所提出的反映了用户信息要求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案。6.1某大学学籍管理系统设计在PowerBuilder中首先建立一个应用(Application),在应用中填写相应的应用名称和库(Library)文件名称及存放路径。这样在以后开
32、发出的窗口(Window)、菜单(menu)、数据窗口(DataWindow)、函数(Function)等就可以放在库文件中了。建立好库文件,就可以建立各种窗口、控件了。在设计的过程中,窗口是各种控件的载体。因此先新建一个窗口(Windows),再往里面添加各种控件。6.2学籍档案子系统的功能和模块:6.2.1登陆系统的功能和模块:(一)登陆系统流程图系统开始运行检查连接参数数据库连接显示登陆界面检验用户密码连接错误重新初始化登陆结束管理员操作员查询员管理操作查询提示错误参数错误参数正确连接成功密码错误密码正确是否否是否是否(二)设计思想(1)数据库的安全性和完整性数据库的安全旨在保证数据库的
33、任何部分都不受到恶意侵害或未经授权的存取和修改。为了确保数据库的安全性,我们设计的数据库管理系统要考虑到以下三方面的问题。第一个问题是用户权限问题。在这个系统中,用户是多种多样的,有教务处的教师,有各个院系的教师,有各个授课的教师,还有学校的学生。因此在多用户数据库系统,数据库管理系统必须提供授权机制,为不同的用户授予不同的数据库操作权限,使得每个用户只能在被限定的数据库集合上执行被允许的操作,防止数据库被非法访问或破坏,如教务处的老师就只能浏览数据、统计数据,而不能修改,删除数据;各个院系的教师则可以对数据进行操作;授课教师只能对学生成绩进行录入;学生只能查询到自己个人的成绩,访问他人的数据
34、是不行的,因为这涉及到个人隐私问题。第二个问题是防止非授权用户使用系统的问题。这类安全性问题是各种计算机软硬件系统所共有的问题。数据库管理系统必须具有防止非授权用户进入和使用数据库系统的机制。这种机制被称为系统保护机制。系统保护机制可以通过创建用户账号和口令来实现。第三个问题是统计数据库的安全性问题。统计数据库中的数据分为两类。一类是微数据。微数据是描述现实世界的实体、概念或事件的数据。另一类是统计或统计数据。统计数据是对微数据进行综合处理而得到的结果数据。例如,在学籍管理系统中,微数据是每个人的详细资料信息,统计数据包括关于不同年龄组、不同院系、不同专业的统计数据。统计数据系统只为用户提供统
35、计数据,不允许用户访问微数据。统计数据包括只为用户提供统计数据,不允许用户访问微数据。但是,微数据有时可以从一组统计数据推导出来。在数据库管理系统必须防止用户访问或推导出统计数据库的微数据(2)数据库的连接参数和属性由于这个系统要连接不同的数据库,数据库的连接参数就必须是动态的。连接参数包括(DBMS.数据库管理系统,Server:服务器,Database.数据库,User.用户,Pwd.密码),这些参数如果写在应用(Application)里的话,经过编译以后。这些参数就不能改了,系统就只能连接一个指定服务器,而且这个指定的服务器有所改变(如:服务器名,数据库名,用户及密码等)那么系统就再也
36、连不上服务器。如果想要重新连接数据库,就必须重新编译,但这是不可能的事。这些参数就要放在和数据库无关的其它位置,在连不上数据库时就可以对这些参数进行修改。常见的做法是在生成一个初始化文件(pb.ini)在系统连接数据库时,从这个文件中调出连接参数,从而达到连接数据的目的。但是这样做的缺点是:(1)初始化文件不是很安全,其他没有权利去访问数据库的用户,可以打开初始化文件,这样就可以看到连接参数,数据库系统的安全性就显得不完整,因为他人可以用获得的这些参数,访问数据库。(2)初始化文件容易被删除,修改。如果(ini)文件在无意被修改或者删除,那么数据库就连接不上,而且在以后的使用过程中,软件的使用
37、人员不知道怎么修改。针对采用初始化文件连接数据库的缺点,我们采用把数据库连接参数放置在注册表中。采用把参数放置在注册表的优点是:(1)注册表文件对大多数人来说,不是很容易理解。了解注册表的用户知道注册表是一个重要的文件,也不敢随意修改注册表。所以说把参数放置在数据库中是安全的。(2)而且注册表文件也算是一个比较大的数据库,要想在里面找出数据库连接参数也不是一件很容易的事。在PowerBuilder中,有专门操作注册表的注册表函数:在系统进行初始化的时候就要对注册表进行写入数据库连接的参数。用RegistrySet (key,valuename,valetype,value)函数对系统注册表中指
38、定的键或值名设置值;如果指定的键或值名不存在,则建立一个新的键或值名,并为它设置值。在系统开始运行的时候从注册表中读出连接参数,从而连接数据库。用RegistryGet(key,valuename)函数。如果从注册表中读出的连接参数不能成功连接上数据库,系统就会提示错误,把注册表中的数据清除。并且在下一次系统运行的时候自动弹出系统初始化窗口,让用户重新进行初始化,添入正确的连接参数。获得正确的数据库连接参数后,如果数据没有问题,那么连接就没有问题,可以连接数据库了。根据用户输入的用户名和密码,从数据库中进行检索,如果用户名和密码正确的化。那么在根据用户的等级和操作权限,让用户进入不同的界面进行
39、操作。用户管理表(login)编号列名含义类型长度精度小数位说明8.1Usrid用户编号Char1000主键8.2logname登陆名称Char10008.3logpasswd登陆密码Char10008.4Opright操作权限Char5008.5Usrname用户姓名Char10008.6Usrdep用户单位Varchar50008.7Note备注Varchar50008.8Deleted删除标记Char100在登陆的时候用户只要输入登陆名称(logname)和登陆密码(logpassed),而其它的详细信息如用户姓名(usrname),用户权限(opringht),用户单位(usrdep)
40、,备注(note)等信息则会从数据库中自动检索出来,作为全局变量(Global Varilabes)。在主窗口中,通过传递过来的全局变量:用户权限(opright),来决定用户的操作权限;如果是拥有管理员权限的用户,则设置其可以对系统进行管理;如果用户是操作用户,则设置其可以对数据进行操作,如果用户是查询用户,则设置其可以进行相应的数据查询操作。6.2.2代码管理系统的功能和模块:(一)设计思想在我们设计的学籍管理系统中,为了提高数据库系统的效率和方便对数据库数据的管理,采用了大量的代码模式。因为在学生的信息中,存在很大重复的信息,如一个班的学生,其所在院系、专业、年级、选课等信息都是相同的,如果在每个学生的信息中,都写上完整的院系名称、专业名称、年级、选课名称,那么在数据库的存储中就会存在大量的存储空间的浪费,而且延长了从数据库查询数据的时间。还有一个不能忽视的问题是:当一个院系、或专业改变名称时,涉及到这个院系、专业的所有学生都要进行改变其所在的院系、专业名称。这样做的话,系统的维护量就很大,让数据库管理员对成千上万的学生信息进行逐个修改,这是不可能的事。针对以上问题,我们在设计的时候,对大量重复的数据信息都采用用代码表示。(1)院系代码(xycode)(2)专业代码(zycode)