《基于(Delphi)条形码的学生档案管理信息系统.docx》由会员分享,可在线阅读,更多相关《基于(Delphi)条形码的学生档案管理信息系统.docx(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于条形码的学生档案管理信息系统摘要随着信息化以及知识经济时代的到来,档案管理成为了每个公司、企事业单位必不可少的重要管理项目,如何予以妥善管理与有效的运用,将是建设现代档案管理制度不可或缺的议题。从这一点出发,提出了一个基于条形码的学生档案管理系统,并在数据保存和传输的过程中加入基于密钥交换的信息安全策略,有效提高了系统的运行效率和数据的安全性和可靠性。系统为使用 C/S 结构的学生档案管理信息系统,系统选择Delphi 与 SQL Server 2000 为开发环境,按照软件工程方法,首先对系统进行了需求分析,并使用 UML 面向对象建模技术,逐步给出系统的用例图,并进行系统的总体设计。然
2、后通过将系统分为用户登录模块、学生档案管理模块、学生档案查询管理模块、学生档案类别管理与档案柜资料管理模块、学生档案借用/归还管理模块等五个主要模块进行了系统的详细设计,包括界面的设计和数据库的设计。并将档案的编号与条形码号建立联系,实现了条形码的编码、读取和打印。系统采用了信息安全策略,即对上传的数据进行基于 RSA 加密算法与 SHA-1 摘要算法的数字签名,而在文件的传输过程中对其进行基于 IDEA 算法的数据加密。系统通过使用条形码技术,大大方便了操作人员的工作和管理,同时,信息在保存和传输过程中的安全性和可靠性也得到了有效的保障。关键词:档案管理信息系统条形码信息安全数据库系统目录1
3、 绪论1.1 研究背景与意义11.2 国内外研究概况21.3 论文的主要研究内容32 关键技术分析2.1 DELPHI 集成开发环境42.2 条形码技术42.2.1 条形码简介42.4 UML 建模技术52.5 本章小结63 档案管理系统的分析与设计3.1 档案管理系统的需求分析73.2 档案管理系统的总体设计83.3.1 系统结构的划分83.3.2 条形码使用流程93.3.3 学生档案管理信息系统的用例分析103.4 条形码的设计103.5 数据库的设计113.7 本章小结124 档案管理系统的实现4.1 开发环境的选择144.2 系统功能模块实现144.2.1 学生档案管理模块实现144.
4、3 数据库访问的实现194.3.1 视图的创建194.3.2 存储过程的创建204.3.3 数据库的连接204.4 系统界面214.5 本章小结225 系统测试5.1 测试用例245.2 测试环境与配置245.3 测试方法和工具255.3.1 黑盒测试255.3.2 白盒测试255.4 测试情况265.4.1 测试组织架构265.4.2 测试时间与地点265.5 测试数据与总结265.5.1 测试数据265.5.2 测试总结275.6 本章小结276 总结与展望6.1 全文总结286.2 课题展望28致谢30参考文献311绪论1.1 课题背景与意义随着科学技术的不断提高,计算机科学日渐成熟,其
5、强大的功能已为人们深刻认识, 它已进入人类社会的各个领域并发挥着越来越重要的作用。学生档案管理信息系统(MIS) 是任何一所院校都不可缺少的部分,它的内容对于学校的决策者和教学管理者来说都至关重要,所以学生档案管理信息系统应该能够为管理人员提供充足的信息和快捷的查询手 段。但一直以来人们使用传统人工的方式管理学生档案,这种管理方式存在着许多缺点, 譬如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。所以学生档案管理系统应运而生,它可以为用户提供丰富的功能,实现操作的自动化,从而大幅度的降低学生档案管理的工作强度,减少了手工操作可能出现的误差,
6、提高档案管理工作的效率,推动学生档案管理的信息化建设。因此,学生信息档案管理的信息化、网络化可以给管理人员以及学校带来显而易现的效果和收益。档案管理对于管理人员的意义:(1) 档案管理不再费时费力。(2) 检索查询更为方便。(3) 档案的查借阅工作更加可控。 档案管理对于学校工作人员的意义:(1) 更好的收集和管理档案档案是一个立档单位为适应职能活动需要而直接产生的依法归档的具有保存价值的文件与材料。实行档案的信息化管理后,必将能够更好的收集和管理这种信息资源。(2) 方便二次利用、提高利用率一般形成的档案总是要隔一年才整理完毕,但事实上本年的档案在二次利用的要求上是最多的,这在一定程度上影响
7、了档案的利用效率;同时既已形成的档案利用起来也是相当麻烦,首先要登记,然后要在浩如烟海的档案中查找,这个过程中不可避免的要造成损坏,而且同一份档案在同一时期只能由一个人借阅,别人只能在他借阅完毕后才能再续借。而档案的信息化建设成功之后,档案信息可以在内部网上共享,有控制地进行利用。321.2 国内外研究概况条形码在70年代左右得到实际应用和发展。现在世界上的各个国家和地区都已经普遍使用条形码技术,而且它正在快速地向世界各地推广,其应用领域越来越广泛。128码和 93码就是其中的主要研究成果。128码于1981年被推荐使用,而93码于1982年使用。这两种码的优点是条形码符号密度比39码高出近3
8、0%,随着条形码技术的发展,条形码码制种 类不断增加,因而标准化问题显很突出。为此先后制定了军用标准 1189、交叉25码、39 码和库德巴码ANSI标准MH10.8M等等。同时一些行业也开始建立行业标准,以适应发展 需要。此后,维阿利尔又研制出49码,这是一种非传统的条形码符号,它比以往的条形码符号具有更高的密度。接着特德威廉斯(Te Williams)推出16K码。它的使用,极大地提高了数据采集和信息处理的速度,提高了工作效率,并为管理的科学化和现代化做出了很大贡献。二维条码正是为了解一维条码无法解决的问题而产生的。因为它具有高密度、高可靠性等特点,所以可以用它表示数据文件(包括汉字文件)
9、、图像等。二维条码具有大容量、高可靠性,是信息实现存储、携带并自动识读的最理想的方法。目前,根据二维条码实现原理、结构形状的差异,可分为堆积式或层排式(Stacked BarCode)和棋盘式或矩阵式二维条码两大类型。堆积式二维条码编码设计、校验原理等方面继承了一维条码的特点, 所以应用比较广泛,有代表性的包括Codc49, PDF417,Code16等。Delphi 是成熟的可视化编程环境,为我们提供了一种方便、快捷的 Windows 应用程序开发工具。它使用了 Microsoft Windows 图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Objec
10、t-Oriented Language)、当今世界上最快的编辑器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用 Delphi 开发应用软件,无疑会大大地提高编程效率。Delphi 实际上是 Pascal 语言的一种版本,但它与传统的 Pascal 语言有天壤之别。一个 Delphi 程序首先是应用程序框架,而这一框架正是应用程序的“骨架”。在骨架上即使没有附着任何东西,仍可以严格地按照设计运行。开发人员的工作只是在“骨架”中加入相应的程序。缺省的应用程序若是一个空白的窗体(Form),也可以运行它,结果得到一个空白的窗口。Delphi 已经为开发人员做好了一切基础工作程序框架就是一个
11、已经完成的可运行的应用程序,只是不处理任何事情。开发者所需要做的,只是在程序中加入完成所需功能的代码而已1。1.3 课题的主要研究(或实现)内容本课题主要实现了基于条形码的学生档案管理信息系统。它可以为使用者提供丰富的功能,实现操作的自动化,从而大幅度的降低学生信息档案管理的工作强度,可为使用者节省了大量的时间,提高了学生档案管理工作的效率,减少了大量的手工操作可能引起的操作失误,推动档案管理的信息化建设。我们在课题中以典型的学生档案管理信息系统的开发过程作为实例,具体的研究内容如下:(1) 通过使用 Delphi 语言实现了一个基于 C/S 结构的学生档案管理信息系统。(2) 介绍了系统实现
12、的主要技术,包括 Delphi 语言、条形码技术、数字签名技术、UML 面向对象建模技术等。(3) 分模块实现了档案管理系统的每个子模块和用户界面。(4) 通过学习E-R 模型和 SQL 的相关知识,在对学生信息进行了详尽的分析下,使用 SQL Server 2000 建立一个以 E-R 模型为基础的关系数据库系统。(5) 探讨了系统实现中设计的关键技术问题,包括条形码的编码、选取和打印;用户的访问控制和身份验证,以及信息数字签名的实现。本论文通过对以上相关知识的介绍和学生档案管理信息系统这个具体实例的开发,研究一个数据库信息系统的实际开发过程。2关键技术分析本章简单阐述系统开发中应用的关键技
13、术,包括开发系统所使用的 Delphi 语言技术、自动化档案管理所需要的条形码技术、增强系统安全性使用的数字签名技术和在工程设计上使用的 UML 建模技术,作为系统开发所使用的主要技术环境。2.1 Delphi 集成开发环境Delphi 是 Borland 公司研制的新一代可视化开发工具,可在 Windows3.x、Windows95、WindowsNT 等环境下使用。它拥有一个可视化的集成开发环境(IDE),采用面向对象的编 程语言 ObjectPascal 和基于部件的开发结构框架。Delphi 它提供了 500 多个可供使用的构件,利用这些部件,开发人员可以快速地构造出应用系统。开发人员
14、也可以根据自己的需要修改部件或用 Delphi 本身编写自己的部件。主要特点如下:(1) 直接编译生成可执行代码,编译速度快。由于 Delphi 编译器采用了条件编译和选择链接技术,使用它生成的执行文件更加精炼,运行速度更快。在处理速度和存取服务器方面,Delphi 的性能远远高于其他同类产品。(2) 支持将存取规则分别交给客户机或服务器处理的两种方案,而且允许开发人员建立一个简单的部件或部件集合,封装起所有的规则,并独立于服务器和客户机,所有的数据转移通过这些部件来完成。这样,大大减少了对服务器的请求和网络上的数据传输量, 提高了应用处理的速度。(3) 提供了许多快速方便的开发方法,使开发人
15、员能用尽可能少的重复性工作完成各种不同的应用。利用项目模板和专家生成器可以很快建立项目的构架,然后根据用户的实际需要逐步完善。(4) 具有可重用性和可扩展性。开发人员不必再对诸如标签、按钮及对话框等Windows 的常见部件进行编程。 Delphi 包含许多可以重复使用的部件,允许用户控制Windows 的开发效果。2.2 条形码技术2.2.1条形码简介条形码技术是 20 世纪在计算机应用实践中产生和发展起来的一种自动识别技术,它是集条码理论、光电技术、计算机技术、通信技术、条码印制技术于一体的综合性技术。由于它具有准确、快速、经济、便于操作等特点,很快便渗透到计算机管理的一些领域。如图书管理
16、、生产流程管理、商品流通管理等。条码的推广和应用给社会和经济带来了很大的效益。条码技术是在计算机的应用实践中产生和发展起来的一种能够实现快速、准确的进行数据采集和自动识别的技术。条码技术的应用解决了数据采集和数据录入的“瓶颈” 问题,为制造业物料管理提供了有力的技术支持。2.4 UML建模技术UML提供的图有八种9,如表 2-1所示:表 2-1 UML图的种类表类 别 用例图类图说 明显示用例、参与者以及它们之间关系。该图根据用户的角度描述对系统的精确要求显示系统中一组类和接口间的静态关系。一些普通的关系类型都有继承性、聚集性和相关性对象图状态图提供指定时刻位于类实例间关系的快照视图适用于保存
17、系统的动态行为。尤其适用于事件驱动,交互式系统或对象, 此外在对接口的行为建模时也很有用活动图交互图用例图类图允许根据各自动作或交互对系统行为建模包括序列图与协作图两种,用来对系统的动态行为建模显示用例、参与者以及它们之间关系。该图根据用户的角度描述对系统的精确要求显示系统中一组类和接口间的静态关系。一些普通的关系类型都有继承性、聚集性和相关性对象图状态图提供指定时刻位于类实例间关系的快照视图适用于保存系统的动态行为。尤其适用于事件驱动,交互式系统或对象, 此外在对接口的行为建模时也很有用活动图交互图允许根据各自动作或交互对系统行为建模包括序列图与协作图两种,用来对系统的动态行为建模代表部分系
18、统的物理表示,例如文件、可执行文件等,说明各组件间的组件图关系和相关性根据节点、处理器及其关系来显示系统的体系结构。 个或多个组件通部署图常映射为一个部署节点UML(统一建模语言)是一种图形语言,用于软件系统建模与开发工作。在软件开发的每个步骤中,从需求的分析到技术规范,再到结构设计及配置要求,UML 都提供了模型化和可视化的支持。利用 UML 获取系统的重要资料,这样就能清楚地理解问题起因, 还能更容易地开发解决方案的体系结构,以及清晰识别与构造实现方式。此外,UML 还为基本构建块中复杂的系统关系提供了表达方式7-8。2.5 本章小结本章简单阐述了系统开发中应用的关键技术,包括开发系统所使
19、用的 Delphi 语言技术、自动化档案管理所需要的条形码技术、增强系统安全性使用的数字签名技术和在工程设计上使用的 UML 建模技术,这些技术在后面的系统的实现中都会使用到。3档案管理系统的分析与设计本章首先进行档案管理业务的需求分析,提出了本系统中档案管理员模块分为档案类别管理、档案柜资料管理、档案信息管理、档案借用管理、档案归还管理、档案查询管理等六大功能,以及用户模块划分为档案查询、档案借阅和档案归还三个功能。并将系统分为三大功能集合,即基本信息管理功能集合、档案借阅及查询功能集合、用户管理及其权限功能的集合,进行分别设计。首先进行了按照软件工程方法要求的系统的总体设计, 包括系统的用
20、例分析,系统的域类分析,以及系统业务活动分析。并进一步说明了系统中一些关键技术细节的处理,如系统中条形码的设计,其中包括条形码的编码、读取和打印, 以及用户的访问控制与身份验证机制的实现,并给出了系统中数字签名的设计和实现。3.1 档案管理系统的需求分析需求分析阶段是学生档案管理信息系统开发的最重要的阶段。首先,我们要了解和澄清客户的需求,然后严格地按照客户的需求给出系统的需求规格说明书。理解需求是在问题及其最终最终解决方案之间架设桥梁的第一步。开发者只有和用户充分的理解了需求之后才能开始设计系统,否则,对需求定义的任何改进,在设计上都必须大量的返工。下面是经过调研后得到的业务需求说明。(1)
21、 系统为档案管理员建立学生信息的档案,用户进入系统前需要身份验证,验证内容包括用户名、密码,只有输入正确后方可进入系统,否则提示错误信息,要求重新输入。(2) 系统需对档案进行分类管理,档案管理员可为不同的部门建立各自的档案资料 库。另外,管理员可在修改档案信息的时候记录修改人员的个人信息和修改的时间等信息。采用面向对象的统一开发过程,经过需求采集和分析,确定档案管理信息系统中档案管理员作为主要活动者的用例:(1) 档案类别管理(2) 档案柜资料管理(3) 档案信息管理(4) 档案借用管理(5) 档案归还管理(6) 档案查询管理而以用户为主要活动者的用例则有:(1) 档案查询(2) 档案借阅(
22、3) 档案归还根据前面所述的用例,可将学生档案管理信息系统的功能相应的划分,并且将这些模块整合为三个功能集合。(1) 基本信息管理功能集合。该集合包括档案类别管理、档案柜资料管理、档案信息管理三个模块,主要用于提供档案类别、档案柜资料以及档案的基本信息。该集合的用例图如下:基本信息管理集合档案借阅管理档案归还管理档案查询管理(2) 档案借阅及查询功能集合。该集合包括档案借用管理、档案归还管理、档案查询管理三个模块。档案借用管理模块根据基本信息管理集合提供的当按信息对档案进行借用管理;档案归还管理模块再根据借用管理提供的借用信息进行归还管理;档案查询管理模块可根据用户的查询条件对以上信息进行查询
23、。该集合的用例图如下图所示,关系图如图 3-1 所示。图3-1学生档案借阅及查询功能集合关系图(3) 用户管理及其权限功能的集合。该集合包括档案管理人员信息管理和权限控制两个功能模块。虽然权限控制不是一个独立存在的模块,但是它贯穿在整个运行的过程中。学生档案管理信息系统的管理人员的管理模块需要经过权限授权才可以正常的使用。权限功能模块确定用户角色由档案部门主管、档案管理人员组成。3.2 档案管理系统的总体设计3.3.1 系统结构的划分根据前面的需求,得出系统可按功能集合划分,其组织结构图如图 3-2 所示:档档档档档档档权案案案案案案案限类柜信借归查管控别资息用还询理制管料管管管管人理管理理理
24、理员理信息管图 3-2系统组织结构图理学生档案管理系统基本信息管理功能集合档案借阅及查询功能集合用户管理及权限功能集合3.3.2 条形码使用流程在条码应用系统中,被管理的学生档案的详细信息是以数据库的形式存储在计算机系统中,当条形码识读设备采集到管理对象的条码符号信息后,通过通信线路传输到 计算机系统中。在计算机系统中,应用程序根据这个编码到数据库中去匹配相应的记 录从而得到对象的详细信息,并在屏幕中显示。整个过程如图3-3 所示。条形码阅读器接口计算机读取图形信息识别编码输入编码使用编码图 3-3条形码使用流程3.3.3 学生档案管理信息系统的用例分析系统的用例分析是 UML 建模的第一步。
25、在上一节需求分析中,我们已经确定了档案管理信息系统的各功能模块(用例)。系统按照角色划分的用例图如图 3-4 和 3-5 所示:档案类别管理档案查询管理档案柜资料管理档案管理员档案信息管理档案借用管理档案归还管理3.4 条形码的设计图 3-4 学生档案管理信息系统用例图(管理员)系统通过加入条形码,使档案编号与条形码编号一一对应,从而实现档案编号在录入或借出时的方便读取,下面详细介绍系统中条形码的编码、读取和打印的相关实现细节。条形码译码流程图如图 3-12 所示。开始初始化N扫描到条码吗?Y采样数据判别为何种条码字符识别Y出错否?N指示灯亮,蜂鸣出错否?通讯Y有否另一条?N结束图 3-12条
26、形码译码流程图3.5 数据库的设计数据库中设计包含了两个实体,即档案和用户,两个关系,即借阅和归还,另外档案的属性档案柜和档案类别具有复合属性,于是数据库初步设计为六个表,即档案信息表、用户信息表、档案柜信息表、档案类别信息表、档案借阅信息表和档案归还信息表,下面图 3-17 是数据库设计的 E-R 图:建立人建立日期建立日期建立人序号序号类别名称档案柜建档内容名称名称编号档案状态建档时间归还编号借出编号档案编号档案编号归还借出用户信息用户信息归还日期借用日期档案状态档案状态用户密码名称编号3.7本章小结图 3-17数据库E-R 图本章首先进行档案管理业务的需求分析,提出了将本系统分为管理员和
27、用户两部分, 其中管理员部分包括档案类别管理、档案柜资料管理、档案信息管理、档案借用管理、档案归还管理、档案查询管理等六个模块,而用户部分包含档案查询、档案借阅、档案归还三个模块。从功能上将系统分为三大模块,即基本信息管理功能集合、档案借阅及查询功能集合、用户管理及其权限功能的集合,进行分别实现。然后进行了按照软件工程方法要求的系统的总体设计,包括系统的用例分析,系统的域类分析,以及系统业务活动分析。并进一步说明了系统中一些关键技术细节的处理,如系统中条形码的设计,其中包括条形码的编码、读取和打印,以及用户的访问控制与身份验证机制的实现,并给出了关键的系统中数字签名的设计和实现。4档案管理系统
28、的实现本章叙述了系统开发的详细过程,首先明确了系统所使用的开发环境和运行环境,即采用 Delphi 语言为开发平台,数据库采用 SQL Server 2000,而 UML 图的绘制则是是采用了 Rational Rose 2003。然后根据上一章的系统的需求分析和总体设计,分别详细实现了学生档案管理系统的界面设计,然后通过又使用 SQL Server 2000 软件实现了数据库的表的设计并完成了相关视图的建立,最后详细介绍了存储过程创建和数据库的连接的技术细节,并给出了部分系统界面。4.1 开发环境的选择系统采用 Delphi 语言为开发语言,数据库采用 SQL Server 2000。而 U
29、ML 图的绘制则是是采用了 Rational Rose 2003 软件。Rational Rose 是一个完全的,具有能满足所有建模环境(Web 开发,数据建模,Visual Studio 和 C+ )需求能力和灵活性的一套解决方案。Rose 允许开发人员,项目经理, 系统工程师和分析人员在软件开发周期内在将需求和系统的体系架构转换成代码,消除浪费的消耗,对需求和系统的体系架构进行可视化,理解和精练。通过在软件开发周期内使用同一种建模工具可以确保更快更好的创建满足客户需求的可扩展的、灵活的并且可靠的应用系统37。4.2 系统功能模块实现从第三章可以得出学生档案管理信息系统包括以下 5 个部分组
30、成,分别是:(1) 用户登录界面及系统主界面(2) 学生档案管理模块(3) 学生档案查询管理模块(4) 学生档案类别管理界面及档案柜资料管理模块(5) 学生档案借用管理界面及档案归还管理模块由于论文篇幅所限,下面仅就以下三个典型的模块进行介绍。4.2.1学生档案管理模块实现学生档案管理模块主要用于维护档案的基本信息,以便管理人员添加、修改和删除档案信息。在界面中,要放置3 个 ADOQuery 组件,然后,在界面上放置1 个 DataSourse 组件, 各个组件的属性如下表 4-1 所示。组件名称属性设置ADOQueryNameDaEditConnectionConDaLeiSQLSelec
31、t*from view_FilesContentADOQueryNameDaGuildConnectionConDaLeiSQLSelect distinct 档案柜号 from view_FilesContentADOQueryNameGetfilecatoryConnectionConDaLeiSQLSelect Cgname from FilesCategoryDataSourceNameCdDaEditDataSetDaEdit表 4-1该界面所需组件属性然后,为本界面添加 OnCreate 事件响应,以初始化窗体信息。代码如下: ProcedureTfGBset.EokClick(S
32、ender:TObject);beginif Edittype.ItemIndex=0 then/修改按钮被选中beginwith fdm.ExecSql do beginclose;Sql.clear;Sql.Add(Format(ExcUpdate,DBEdit.text, DBEdit2.text,dangtype.text,Dagui.text,DBEdit4.text,DBMemol.text,Dend;aStatus.text,DBEdit5.text);/执行操作ExecSql;end;end;end else beginwith fdm.ExecSql do beginclos
33、e;Sql.clear;Sql.Add(Format(InsertSql,DBEdit.text,DBEdit2.text,Trim(dangtype.text),DaG ui.text,DBEdit4.text,DBMeo1.text,DaStatus.text,DBEdit5.text);Sql.Clear;Sql.Add(Format(GetDa,Trim(dangtype.text); Open;上述代码中所使用的 GetDa 是在 SqlStr 单元中定义的常量,代码如下: GetDa=SELECT FilesContent.Status as “ 状态 ”,FilesContent
34、.FileId as “ 档案编号” , FilesContent.Fname as “名称”,+FilesContent.Contents as “内容”,FilesContent.CabinetId as “档案柜号”,Filescabinet.cbname as “档案柜 ”+FilesContent.Ftime as “ 建 档 日 期 ” , FilesContent.Content.Remarks as “ 备注”FROM+FilesContent,FilesCategory, FilesCategory,FilesCabinet where filescontent.catego
35、ry id=filescategory.categoryid+and filescabinet.cabinetid= filescontent.cabinetid=filescontent.cabinetid and filescategory.cgname=”%s”管理人员在学生档案信息列表中选择了目标档案信息后,如果选择的操作类型是”修改”时,编辑栏中就会显示该档案的详细信息。管理人员修改完毕后,单击”确定”按钮即可完成对该档案信息的修改。如果将操作类型设为”添加”时,管理人员可填写新的档案信息,然后单击”确定”按钮, 系统就会在当前所选择的档案类别下录入的该档案信息。为实现上述功能,添加
36、”确定”按钮的 OnClick 事件响应。代码如下:Procedure TfGBset.EokClick(Sender:TObject) begin if Edittype.ItemIndex=0 then/修改按钮被选中begin/ExecSql 是在界面中定义的一个 ADOQuery 组件with fdm.ExecSql do beginclose;Sql.clear;Sql.Add(Format(ExcUpdate,DBEdit2.text,dangtype. text,DaGui.text,DBEdit4.text, DBMemo1.text,DaStatus.text,DBEeit5
37、.text);/执行操作ExecSql; end;end else beginwith fdm.ExecSql do beginclose;Sql.clear;Sql.Add(Format(InsertSql,DBEdit1.text,DBEdit2.text, Trim(dangtype.text),DaGui.text,DBEdit4.text,DBMemo1.text, DaStatus.text,DBEdit5.text);ExecSql; end;with fdm.DaEdit do/刷新界面beginclose;Sql.Clear; Sql.Add(Format(GetDa,Tri
38、m(dangtype.Text); open;end; end;end;另外,如果管理人员在”修改”状态下,单击”删除”按钮时,即可对当前所选定的当按信息进行删除操作。添加”删除”按钮的 OnClick 事件响应。代码如下:Procedure TfGBset.EdeleClick(Sender:TObject); beginif MessageDlg(确定要删除该档案么?,mtCustom,mbYes,mbNo,0)=mrYes then beginwith fdm.ExecSql do beginclose;Sql.Clear;Sql.Add(Format(DeleteSql,DBEdit.
39、text); ExecSql;End;with fdm.DaEdit do/刷新beginend; end;end;close;Sql.Clear;Sql.Add(select * from view_FilesContent);Open;4.3 数据库访问的实现4.3.1 视图的创建在本系统中,为了便于浏览档案的基本信息、借用以及归还信息,我们创建了 3 个视图,view_SFContent、view_SFBorrow 和 view_SFReturn.这三个视图的 Transact-SQL 代码如下:(1)视图 view_SFContent 用于监视档案的基本信息CREATE VIEW db
40、o.view_SFContentASSELECTdbo.FilesContent.Status AS 状态 dbo.FilesContent,FileIdAS 档案编号, dbo.FilesContent.Fname AS 名 称 , dbo.FilesContent.contents AS 内 容 , dbo.FilesContent.CabinetId AS 档案柜号,dbo.FilesCabinet.Cbname AS 档案柜, dbo.FilesContent.Ftime AS 建档日期,dbo.FilesContent.Remarks AS 备注 From dbo.FilesCont
41、ent INNER JOINdbo.FilesCabinet ON dbo.FilesContent.CabinetId=dbo.FilesCabinetId(2)视图 view_SFBorrow 用于显示档案的借用信息CREATE VIEW dbo.view_SFBorrowSELECT FilesBorrow.Status as “状态”,FileBorrow.FbId as “借用编号”,FilesBorrow.FileId as “档案编号”,FilesContent.Fname as “档案名称”, FilesBorrow.Borrower as“借用人员”,FilesBorrow.
42、Btime as “借用日期”,FilesBorrow.Remarks as 备注FROM FilesBorrow,FilesContentWHERE FilesBorrow.FileId=FilesContent.FileId(3)视图 view_SFReturn 用于显示档案的归还信息。CRETATE VIEW dbo.view_FreturnASSELECT dbo.FilesReturn.FrId AS 归还编号, dbo.FilesReturn.FileId AS 档案编号, dbo.FilesContent.Fname AS 档案名称 dbo.FileReturn.Returner
43、AS 归还人, dbo.FilesReturn.Rtime AS 归还时间,dbo.FilesReturn.Remarks AS 备注FORMdbo.FilesReturn INNER JOINdbo.FilesContent ON dbo.FilesReturn.FileId= dbo.FilesContent.FileId在程序中,我们可以使用者三个视图直接查询并显示多个表中的学生档案信息、己用及归还信息,例如视图view_SFBorrow 和学生档案信息表 FilesContent 中的信息,从而大大的简化了程序设计43。4.3.2 存储过程的创建在本系统运行过程中,有一些工作需要经常进
44、行,不如向各个表中插入或更新学生档案的基本信息、档案借用及归还信息等操作。为了提过系统的运行效率,在这里创建了几个存储过程。列举以下几个存储过程,它们的 Transact-SQL 代码如下:(1) 存储过程 IsertFContent 用于向学生档案信息表中添加记录。(2) 存储过程 InsertFCategory 用于向学生档案类别表中添加记录。(3) 存储过程 InsertBorrow 用于向学生档案借用表中添加记录,并修改学生档案信息表中对应档案的状态。(4) 存储过程 UpdateFContent 用于对学生档案信息表的记录进行更新。(5) 存储过程 InsertFReturn 用于向
45、学生档案归还表 FilesReturn 添加记录,并修改档案信息表 FilesContent 及学生档案借用表 FilesBorrow 中对应档案的状态。(6) 存储过程 DeleteFReturn 用于对学生档案归还表 FilesReturn 的记录进行删除, 如果学生档案借用表FilesBorrow 中有相应档案的信息,则要修改学生档案信息表FilesContent 及学生档案借用表 FilesBorrow 中对应档案的状态44。(7) 存储过程DeleteFBorrow 用于对学生档案借用表FilesBorrow 的记录进行删除, 并修改学生档案信息表 FilesContent 对应档案的状态。在应用程序运行的过程中将调用这些存储过程,完成对学生档案基本信息、借用以及归还信息的插入、更新、删除等工作。4.