数据库原理与应用实验14(二版).doc_第1页
数据库原理与应用实验14(二版).doc_第2页
数据库原理与应用实验14(二版).doc_第3页
数据库原理与应用实验14(二版).doc_第4页
数据库原理与应用实验14(二版).doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库原理与应用实验教材实验十四 模拟银行前台系统设计与实现(综合性实验)一、实验目的及要求本实验主要目的是让学生综合运用所学的数据库知识,结合一个主题实战性地进行数据库系统的分析、设计和实现。通过整个过程不但加深对数据库理论知识的理解,更能强化对实验技能的掌握,最重要的是通过有条理系统化的实验,来掌握数据库系统开发的基本流程和基本方法,为将来的就业和学习提升奠定基础。本实验主要目标是:l 熟悉数据库系统系统分析、设计和实现的基本步骤和方法。l 进一步熟练数据库设计的方法。l 熟悉数据库应用开发的基本步骤和方法。l 综合运用各种数据库技术,解决实际问题。本实验更是面向实际应用的,通过实验可以让学生领会数据库知识在实践中是如何运用的,提高他们运用知识的能力,增强对数据库的兴趣。主要要求有:l 学生可以分组完整,组内既要有分工,又要有合作。l 数据库的设计要求参考实验十一。l 要有系统设计内容,主要是模块和功能设计。l 数据库开发技术可以自选,不限定。l 数据库访问时不推荐使用绑定技术,至少有一半内容使用纯代码方式。l 程序开发工具可以自选,不限定。l 报表制作技术可以自选,不限定,但必须有报表技术。l 系统界面要简洁易用。l 必须有用户控制功能。l 必须有数据输出功能。l 必须完成重点模块开发。l 至少完成百分之八十的模块或者编码工作量。l 数据库中要有符合现实的调试数据。l 源码中要添加必要注释。l 程序要正确运行无错误出现。l 最终得到一个可运行的教完整系统。l 要求提交设计文档和系统源码。二、实验原理及背景知识(一)数据库系统开发知识1、数据库设计知识。参考第一篇第4章。2、数据库应用开发知识。参考第一篇第5章。(二)银行前台知识银行跟我们生活息息相关,每个人都难免会跟银行打交道。本实验选择以银行前台业务为基础来建一个模拟的应用系统,在实验过程中不但可以掌握数据库知识,还可以通过对银行业务进行分析来加强对银行业的了解。本小节重点介绍银行前台业务知识,为实验提供背景知识,供实验者参考,但鉴于本实验内容中需要多业务分析,因此本业务知识仅仅是提示性质的,实验者需要进行实地调查、向专业人士请教、网络搜索等各种方式来进行业务分析。另外,本实验背景知识是抽象的或者普通的银行前台业务,不针对任何一具体银行,但实验者可以选择某一具体银行网点来进行调研,以此作为本实验的基础。银行有多个部门,本实验选择前台作为对象,前台一般是银行面向大众的普通营业部门,我们印象中的银行多是针对银行前台的。前台业务主要分为对公业务和对私业务,对公业务是针对企事业单位的,而对私业务是针对个人的。本实验中前台业务仅仅局限于对私业务这一范畴,同时不专门针对前台内容的会计业务。本实验中对私业务以储蓄为核心,一般来讲主要业务有:1、人民币储蓄业务1)账户类型管理定期一本通、活期一本通、定期转存、约定转存、通知存款、个人存款联名账户等。2)账号管理。开户、销户、冻结、解冻、挂失、补卡/折、换卡/折、补登记等业务。3)取款。活期领取、定期到期取、存本取息、大额、提前支取等。4)存款。活期、定期、定活两便、通知存款、存本取息等。5)转账。同行同城、同城跨行、异地跨行、电汇等。6)其他挂失、继承过户、双货币存款等其他储蓄业务。2、电子银行服务 电话银行、网上银行、手机银行。3、外汇服务 外币储蓄存款、外汇兑换、外汇购买等。4、代理业务便民业务代收水费、电费、电信费、有线费等。代发工资证券代理保险代理旅游代理(虚拟增加)。考虑到旅游业发展,可以虚拟增加这一业务。其他代理业务5、其他业务开具各种证明、资产推介、黄金业务、假币的收缴与鉴定、信用卡还款等。注意:信用卡属于信用卡部,前台只负责信用卡还款。个人贷款属于贷款部。公积金等不是传统个人业务,不在本系统范畴。另外,本虚拟银行前台业务还应该可以调整利率和计息方式、简单核对账目、客户资料管理等业务。所有相关的一些业务或功能在本实验中可以虚拟,比如验证身份证等等。(三)ADO.NET知识二、实验内容及步骤本实验虽然为综合性实验,但是实验内容的重要性是不相同的,鉴于本实验为数据库课程实验,不是软件工程或者管理信息系统实验,更不是程序设计实验,因此本实验中的重点内容是针对本课程的,既不是针对其他课程,也不是针对真正的软件系统开发。本实验重点内容主要为:数据需求分析、数据库设计与实现、数据库中数据的访问、编辑与显示。难点为如何把显示业务操作转换为对数据的操作。(一)系统分析重点围绕实验背景知识中的前台业务进行分析,分析各个业务的办理流程和数据流程,提取系统的功能需求和数据需求,并得到系统的数据流图和数据字典,并撰写系统分析报告。在进行系统分析的时候可以按照业务相似性进行分类分析,然后对业务进行逐步细化。(二)数据库设计和建设在系统分析的基础上,根据数据流图和数据字典,抽象出系统所用数据库概念结构。具体内容参考实验十一。系统基本数据主要包括:客户信息、账户信息、业务类型、业务信息、柜员信息等。(三)系统功能设计1、设计系统基本结构体系,选择开发工具和开发技术。2、绘制系统模块结构图,并进行模块设计。对每个模块都要设计其主要功能、子模块、输入输出,模块主要算法等内容。3、对每一个模块和功能设计主要界面,并详细描述业务执行流程,所需要使用的数据库表等对象,并对不用的系统用户进行区别。4、一定要有用户控制及登录模块,用户管理各种类型的用户,并为不同用户提供不同权限。5、要有系统设置模块。拥有设置系统信息,比如利率、计息日等。6、要有核对账目信息的功能,比如对单个柜员或者整个营业部门的收支情况进行核对,并能帮助寻找差错信息。7、要设计一种排错功能。比如取款时:当柜员所输入的账号扣款金额跟点钞机清点的金额不一致的时候,系统能给出报警提示。8、系统设计时候每个模块和功能都要设计排错能力,避免出现不可预料的错误。9、设计各功能实现时要设计授权功能,因为很多业务室需要上级授权完成的。(四)开发系统登录模块(以ADO.NET为例)基本内容:1、提前设计好各种用户类型,并为每种用户类型设置权限,不同权限代表对系统的使用功能不想同。2、利用Connection对象链接到数据库服务器,重点是是设置连接字符串。3、利用输入的账号和密码通过数据库进行身份验证,实现登录系统功能。4、某种高级用户可以实现用户信息的管理,所有用户都可以实现个人密码修改。基本方法及步骤:1、首先在项目中添加对ADO.NET的引用,并导入命名空间。一般使用sqlClient命名空间。2、创建Connection、Command和Datareader对象,并为Connection对象的ConnectionString属性赋值。具体内容参考第一篇知识。3、对输入的登录账户格式进行验证,避免无效和非法字符。4、利用输入的账号书写一条查询语句,通过Command对象执行,并利用Datareader对象来获取该用户信息。5、通过验证Datareader对象有无数据来验证该用户是否合法用户。6、如果是合法用户,则从Datareader中获得密码信息,进而验证密码是否正确。7、当密码正确后即通过身份验证,但同时要获得用户权限,进而为用户呈现合法界面和功能。(五)查询数据的显示基本内容:1、 设计友好的界面,为常用业务提供查询界面。2、 通过用户在界面中输入的信息,进行逻辑组合,获得正确无误的SQL查询语句。3、 讲查询获得的批量数据在某个控件进行显示。基本方法及步骤:1、在当前项目中添加数据显示控件,比如MSFlexGrid控件或者DataGridView控件。2、对该控件进行初始化设置,主要是根据要显示的信息设置控件的初始行和列数量,并设置外观格式及表头信息。3、获得SQL语句的固定部分,一般是欲显示的字段及所使用的表及连接,此处也可以使用视图。4、根据界面控件隐含的逻辑,注意判别哪些控件有值,并将其转换为查询条件字段值。同时为各个查询条件进行逻辑组合。最终的SQL语句的后半部分,主要是WHERE语句之后内容。5、利用完整的SQL语句及ADO.NET对象执行查询,获得数据。数据可以使用Datareader对象保存,也可以使用DataSet对象。下面以Datareader为例说明。6、对Datareader对象进行遍历,没得到一行就在数据控件进行显示,同时为数据控件增加一个新行,直到所有数据都遍历完毕。注意:在完成系统的时候可以先完成基本功能,任何再进行优化及美化。(六)数据编辑实现基本内容:数据编辑主要是提供一系列控件让用户输入数据和选择数据编辑类型,然后将数据和命令类型转换为SQL,并通过SQL完成对数据库中数据的编辑。编辑主要包括:数据添加、数据删除和数据修改。基本方法及步骤:1、首先合理组织界面控件,主要是数据接收控件和命令控件。2、数据接收控件尽量使用选择型,以便方便用户操作,同时减少错误输入。3、合理组织命令控件的逻辑执行流程,因为添加、删除和修改一般在同一个界面,而且每一个过程都运行进行反悔,所以要合理组织流程。4、注意修改主键和删除的时候要通过数据库触发器或者代码进行完整性保证。5、对于添加,一般步骤是先点击添加按钮,然后清空所有控件供用户输入数据,输入完成后用户点击确认安全进行添加确认。这时程序从界面获得数据,并进行基本的合法性验证,不能把全部验证交给数据库去完成。验证通过后,生成Insert语句,在执行前询问用户,用户确认后就通过执行SQL语句,完成真正的数据添加。完成添加后,需要同步更新数据显示控件中的数据。6、对于修改,首先让用户选择数据,然后点击修改,这时候记录旧数据主键信息。然后解锁控件,供用户修改数据,用户修改完毕后点击确认。程序对数据进行验证,然后判断是否修改了主键,如果没有就得到update语句,然后询问用户,得到确认后执行update语句。如果用户修改了主键,则首先根据主键删除旧数据,然后通过insert语句添加新数据。完成后同步更新数据显示。7、对于删除数据,首先让用户选择数据,然后点击删除,经过用户确认后执行delete语句删除数据,然后同步更新数据显示。注意:1、数据添加和修改可以使用同一系列控件,注意主键的处理,自动生成的主键不允许添加。2、数据删除的时候应该提供一种快速的查询方式,查询到要删除的数据后让用户进行选择进而删除。3、一般来讲数据编辑可以使用一个窗体界面来实现,上面提供输入控件,下面是显示数据的控件,中间是各种按钮。4、也可以分别使用两个窗体实现数据编辑,分别对应添加和修改界面,查询和删除界面。初始界面是查询和删除界面,界面同时提供添加和修改按钮,分别打开同一个窗体,但是添加打开的没有内容,修改打开的有内容。添加或者修改完成后返回默认界面后,显示的数据要更新。5、各个按钮的逻辑控制一定要设计好。不要出现不该出现的按钮和没用的按钮,尤其是数据添加或修改过程中,把无关控件禁用。6、可以把一些常输入的数据存放在数据库中,然后在系统运行的时候自动填充到控件中供用户选择,从而减少输入工作量和输入错误。(七)数据查询实现实验内容:数据查询重点在于如何利用界面中用户输入的数据得到正确的SQL查询语句。此处的数据查询是指专门的复杂的查询,不是数据编辑中的查询。基本方法及步骤:1、选择一方面实际业务需求,分析其各种需求,得到各种查询要求。2、对每个需求选用合理控件。输入值没有范围的使用文本框;有一定范围的使用组合框;完全限定范围的使用列表框;有限多选的使用复项框;几个只能选一的使用单选框。3、对多个需求归并整理。对同类互斥的条件归为同一组,同组内只能选择一个条件;对相容的化为不同组;对相容的组根据实用性进行合并;各个组之间设置AND和OR条件供选择;对各个条件相应设置选择标志5、得到合理的SQL语句。在代码中分别判断每组有没有被选中;在代码中对选中的组的各个条件进行一一判断,并相应加入SQL语句;判断各个组之间的关系,加入SQL语句;整理合并生成正确的SQL语句6、执行SQL并保存查询结果7、使用数据显示控件显示查询结果8、有时候需要对查询的数据进行高级处理,以便得到新的数据。(八)存储过程调用实验内容:1、主要使用command对象来执行存储过程,关键是为存储过程设置参数,并且正确接收存储过程返回的值。2、把系统中经常使用的SQL语句改写成数据库的存储过程,然后在系统中通过代码调用。基本步骤及方法:1、 为存储过程参数定义变量,并获得参数值。2、 主要是为Command的CommandText属性设置存储过程名称。3、 为Command对象设置各个参数。4、 调用Command方法执行存储过程,并接收返回值。(九)错误处理实验内容:再完美的代码也会有出错的地方,所以系统编码的时候必须有相应的错误处理机制。主要有两种类型的错误处理。1、数据库连接和操作中的错误。2、代码中的不可以预料错误。3、对出现的错误应该尽量给出恰当的提示,同时尽量避免系统崩溃。基本方法及步骤:1、 使用ADO.NET的Error对象捕捉数据库中错误。2、 利用程序的功能捕捉程序中错误,比如使用Try Catch finally语句等。(十)报表处理实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论