银行储蓄系统_第1页
银行储蓄系统_第2页
银行储蓄系统_第3页
银行储蓄系统_第4页
银行储蓄系统_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、精品 料推荐数据库系统原理课 程 设 计2011 年 12 月 31 日0精品 料推荐目录一、概述-31.1课程设计的目的 -31.2课程设计的内容 -31.3课程设计的要求 -3二、需求分析 -32.1系统需求 -32.2数据字典 -3三、系统总体设计 -33.1系统总体设计思路 -33.2概念模型设计 -33.2.1局部 e-r 图 -33.2.2全局 e-r 图 -33.3逻辑结构设计 -33.4数据库建立实施 -33.4.1建立数据库 -33.4.2建立关系表 -3四、系统实现 -3五、系统评价 -3六、课程设计心得、总结 -3参考文献: -3致谢-3附录-31精品 料推荐一、概述1.

2、1课程设计的目的数据库系统原理 课程设计是本专业的重要实践性教学环节, 是数据库系统原理课程的后续辅助教学课程。 通过该课程设计, 使学生掌握数据库的基本概念,结合实际的操作和设计, 巩固课堂教学内容, 使学生掌握数据库系统的基本概念、原理和技术, 将理论与实际相结合, 应用现有的数据建模工具和数据库管理系统软件, 规范、科学地完成一个小型数据库的设计与实现, 把理论课与实验课所学内容做一综合, 并在此基础上强化学生的实践意识、 提高其实际动手能力和创新能力。具体掌握的基本能力有以下几个方面:1. 学习和巩固数据库系统原理的基本知识。2. 关系数据库管理系统的基本使用方法。3. 熟悉 sql

3、语言的主要功能及 sql 语句的使用操作。4. 熟悉数据库管理系统的设计过程,培养解决实际问题的能力。5. 小型数据库应用系统的设计方法。1.2课程设计的内容1、课程设计内容:(1) 主要的数据表定期存款帐,活期存款帐,存款类别代码表等等。(2) 主要功能模块1) 实现储户开户登记。2) 办理定期存款帐。3) 办理定期取款手续。4) 办理活期存款帐5) 办理活期取款手续。6) 实现利息计算。7) 输出明细表。2精品 料推荐8) 具有数据备份和数据恢复功能。2、系统要求:(1) 要进行实际调研,系统功能在实现时参照实际的储蓄系统的功能。(2) 同时要考虑银行系统数据的安全与保密工作。1.3课程设

4、计的要求1. 根据题目查找资料及调研,写出数据库系统的需求分析报告;2. 根据需求分析,设计系统的功能结构,画出系统的功能结构图,设计的功能要全面、正确,能解决现实世界各类用户的实际需要;3. 根据需求分析,确定所设计的系统涉及到的实体、各实体的属性以及各实体之间的联系,用 e-r 图完成系统的概念模型设计, 设计的概念模型要能全面、真实的反应现实世界,能满足系统功能的需要;4. 根据 e-r 图转换为 dbms支持的关系模型,作出数据库系统的逻辑模型:1)数据库的关系模式(使用关系模型规范化理论进行优化,要求各关系至少达到 3nf);2)确定各关系属性的域;3)确定各关系的主码、必要的约束、

5、关系之间的参照完整性等。5. 适当的选择设计各类用户的子模式;6. 根据逻辑模型、系统环境和用户需求,设计数据库的物理结构。7. 使用 pb、 vfp、 vb、 vc、 vb.net、 c#、 java、 delphi、 asp、 jsp、 php或 asp.net等程序设计语言,进行相应前台主要模块和菜单的设计,采用b/s或 c/s 模式,数据库作为后台服务器。8. 设计一组数据库表的测试实例,对各项功能进行简单的测试并写出测试结果。9. 按照附件 1 中课程设计模板的格式, 编写课程设计报告, 并使用 a4 纸打印、上交。10. 提交以下电子稿信息: 课程设计报告电子稿、 数据库文件 (*

6、.mdf 和*.ldf文件 ) 、软件源代码和软件使用说明3精品 料推荐二、需求分析2.1系统需求通过调查,要求系统需要有以下功能:( 1) 要求有良好的人机界面;( 2) 由于该系统使用对象多,要求有较好的权限管理;( 3) 原始数据修改简单方便,支持多条件修改;( 4) 方便的数据查询,支持多条件查询;( 5) 在相应的权限下,删除数据方便,数据稳定性好;( 6) 数据计算自动完成,尽量减少人工干预。系统中要求每个人银行管理者都有一个系统帐号, 并每个帐号都有密码, 系统的一切操作(如:增加存储用户,提高利率等)都由管理者执行,而不是由存诸用户执行,也主是说存储用户并不直接与系统交互, 而

7、是通过管理员与系统交互。该系统主要有两部份业务功能,存款与取款。储户填写的存款单或取款单由业务员输入系统, 如果是存款则系统记录存款人姓名,住址,电话号码,身份证号码,存款类型,存款日期,到期日期,利率及密码(可选)等信息,如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码, 则系统计算得利息并打印出利息清单给储户。2.2数据字典数据名字:注册申请表数据名字:储户信息表数据来源:储户数据来源:储户数据数目据的目:的储:户身信份息验证数据组成:姓名+密码 +住址 +身份证号码 +现有金额数据组成:姓名+密码 +住址 +身份证号码数据名字:利息清单数据来源:系统数据目

8、的:储户数据组成:利息+姓名 +取款时间 +取款金额4精品 料推荐数据名字:存单数据来源:存款信息表数据目的:储户数据组成:姓名 +到期时间 +存入类型 +存入时间 +利率 + 存入金额数据名字:取款单数据来源:储户数据目的:储户信息表数据组成:姓名 +到期时间 +存入类型 +存入时间 +利率 + 取款金额 +身份证号数据名字:存款单数据目的:存款信息表数据组成:姓名+到期时间 +存入类型 +存入时间 +利率 +存入金额 +身份证号三、系统总体设计3.1 系统总体设计思路银行储蓄系统的主要功能实现储户开户登记、办理定期存款帐、 办理定期取款手续、办理活期存款帐、办理活期取款手续、实现利息计算等

9、。每个功能模块都和银行的业务量直接有关,采用银行储蓄系统的目的是提高储蓄服务的质量,提高信息管理的精度, 进而提高银行在客户心目中的信誉,树立良好的银行服务形象。各子功能分析如下:储蓄项目管理功能该功能实现了银行管理人员对银行内部制定和调整储蓄项目信息的管理。包括对储蓄项目增加、修改、删除、查询等等。储户信息管理功能该功能实现了对银行信息的管理,该功能包括开户、销户等等。储户服务管理功能5精品 料推荐该功能实现了对储户服务的具体化,也是储户需求量最大的服务项目。主要包括存款、取款和转账以及修改密码和查询余额等功能。操作人员管理功能该功能主要是系统管理人员对操作人员的管理。包括添加操作人员、 删

10、除操作人员、修改用户名或密码等功能。系统维护功能该功能主要是对该系统的维护。包括关于和退出系统两项内容。由于业务员的操作与用户的操作基本相似,可以简单化地认为系统只与业务员交互,基于这个思想,将有利与简化以后系统程序的设计与开发。精化图如下银行存储管理系统用户操作业务员操作系统输出开存取查户款款询计保 存更打算新 用新印利户 信用存密码验证息息户单信息提提提提交交交交用存取打用户款款印户申单单清查请单询表表银行储蓄系统功能模块图6精品 料推荐3.2 概念模型设计3.2.1局部 e-r 图根据数据项和数据结构,可设计规划出储户实体、管理员实体和系统实体的e-r 图。其中,图( 1)所示为储户实体

11、 e-r 图,图( 2)所示为管理员实体 e-r 图,图( 3)所示为存款实体 e-r 图,图( 4)所示为取款实体 e-r 图,账号身份证号姓名住址登录密码储户性别储户实体 e-r 图( 1)员工号管理员姓名管理员实体e-r 图( 2)金额存款类型到期日期账号姓名存款日期存款存款实体 e-r 图( 3)7精品 料推荐金额账号取款日期取款姓名取款实体e-r 图(4)3.2.2全局 e-r 图姓名登 录 密码1金额存款类型到期日期存款日期打印存员工号单金额存款类型到期日期存款日期1住址身份证号码账号性别储户1nnn金额存查取款询款取款日期nnn管理员姓名打清单信息印nnn清单取款日期存查取款询款

12、金额1111系统8精品 料推荐3.3逻辑结构设计1储户(储户账号、姓名、密码、身份证号、性别、账户余额、开户日期、住址)2管理员(员工号、姓名)3活期存取款(储户姓名、员工号、账户金额、存款类型、到期日期、存取款日期、利息)4查询(储户姓名、员工号)5定期取款(储户姓名、账号、金额、取款日期)6定期存款(储户姓名、账号、金额、存款日期、存储年数、利率)3.4 数据库建立实施3.4.1建立数据库数据库在一个银行储蓄系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率, 保证数据的完整性和一致性。 同时合理的数据库也

13、将有利于程序的实现。本设计采用sql server2000 来建立数据库。在创建数据库时,首先启动 microsoft sql server,然后创建名为 bankdb的数据库。创建数据库的具体步骤如下:(1)选择“开始” / 程序 /microsoft sql server/企业管理器命令,打开sqlserver 数据库的运行环境,在此环境中单击“数据库文件”右击“新建数据库”进行数据库的创建,建立数据库如图所示:9精品 料推荐创建数据库3.4.2建立关系表在 bankdb数据库单击新建表,则可建立表。如图所示:创建表设计表如图所示:10精品 料推荐储户设计表(iuser )活期存取设计表(

14、hqcq)定期取设计表(dqq)定期存设计表(dqc)11精品 料推荐权限设计表 (user_info)表中的内容如图所示:储户表( iuser )活期存取表 (hqcq)定期取表( dqq)定期存表( dqc )权限表 (user_info)12精品 料推荐四、系统实现1、这是窗体登录主界面,用户登录后可以保障数据的安全性,用户登录需要用户名和密码,保证输入的正确。步骤一:首先输入注册的用户名,再输入正确的密码。登录界面如图所示:登录界面步骤二:点击“登录”按钮进行登录验证,如果输入的账号信息正确,则会出现程序主界面, 表明成功登录系统, 如果输入的用户名不存在或密码错误,则会给出错误提示信

15、息。2、这是银行管理员操作主界面, 主要有浏览储户信息、 添加储户信息(开户)、删除储户信息(销户)、修改密码等操作。如图所示:13精品 料推荐主界面3、当对新用户进行开户时, 点击主界面中的银行信息管理,再点击其下面的子模块添加储户信息,输入账号、姓名、密码、省份证号等,单击“确定添加”按钮则会提示添加成功。如图所示:添加储户信息界面4、当对用户进行浏览时, 点击主界面中的银行信息管理,再点击其下面的子14精品 料推荐模块浏览储户信息,可显示账号、姓名、密码、省份证号、余额等储户信息,单击“首记录”“上一记录”“下一记录”“末记录”按钮,则可对不同的储户进行查看信息并且会出现提示信息,是最后

16、一条记录,还是首记录。如图所示:浏览储户信息界面5、当修改密码时,点击主界面中的银行信息管理,再点击其下面的子模块修改密码信息,可进行密码修改,首先显示原密码,点击“确定”按钮,其次显示新密码,并输入确认密码,最后点击“确定”按钮,则可完成密码修改。如图所示15精品 料推荐原密码新密码6、当删除储户信息时,点击主界面中的银行信息管理,再点击其下面的子模块删除储户信息,可对储户进行删除,即销户,其下面又分为两个子模块,一是按16精品 料推荐姓名删除,二是按卡号删除,二者结果一样,即达到了删除储户信息的目的。如图所示:按姓名删除界面按卡号删除界面17精品 料推荐五、系统评价本系统是关于 c/s 模

17、式的设计,由于这次的银行储蓄系统个人能力有限我没有完全满足老师的要求,但是我所做出的模块和功能基本上都能实现。1当操作员输入正确的用户名和密码时,便可登录到主界面,对储户进行一系列的管理及操作。2对本系统存在的缺点 :( 1)部分数据通过实际观察假设得来,没有确凿的文献作为依据。( 2)考虑的因素不是十分充分,与实际情况存在一定差距。( 3)模型中未充分考虑具体的人流到达随机性,而是用计算整体平均讨论。( 4)所设计的界面没有进行美工设计。3. 对本银行储蓄系统的建议:( 1)实行服务台弹性数量制度,通过模型的改进二得出在周六与周日客流量比较少的情况下可减少窗口的开放,开设三个窗口即可,在一天

18、的各个时段也可弹性改变窗口的数量。( 2)细分顾客,设置不同的服务柜面。( 3)可采用排队与叫号混合使用,在周一到周五客流量比较多时为提高顾客满意度可采用排队叫号系统,在周六周日客流量比较少时考虑飞号现象可采用排队系统。( 4)在顾客等待服务时间,服务人员可为顾客完成一些辅助性的工作。18精品 料推荐六、课程设计心得、总结通过这次的数据库设计,我总结了很多,同时也学到了很多有关数据库的知识,因为这是我的一次亲身尝试并且是一次真真正正的设计有关数据库的进步,之前虽然学过数据库但只是一些简单的 sql语句,并没有真正地去完成一次有关和前台的连接设计, 之前所学的远远不够这次设计需要, 但我并没有灰

19、心, 虽然过程很艰难, 但我还是坚持了下来并没有放弃, 通过不断地努力, 在图书馆里借阅有关书籍,因为在这次设计之前我对 vb不是很了解,需要老师和同学的帮助,慢慢的对 vb有了一定了解,对银行储蓄系统所需主要功能有了一定的了解,从学 vb6.0 的基础开始,如何创建工程、窗体、模块,如何添加标签、文本框、按钮等,以及它们发生什么事件及其如何响应事件, 再次主要是如何将前台和后台数据库 sqlserver2000 绑定,如何配置数据源,如何在 vb里添加使用 ado数据控件连接数据库等等, 这些都是我一开始设计出现的主要问题, 我就不断地查阅资料和网上搜索, 真的是功夫不负有心人, 出现的问题

20、逐个地被解决, 每解决好一个问题都会很兴奋,而且也学到很多。在这段时间里,我对 vb从不知到最后做出个小系统, 深深体会到,没有你做不到的, 只有你想不到的, 只要你不放弃,认真的去对待, 就会得到你想要的结果, 虽然这次的设计没能完全达到老师的要求,只是完成了一部分的功能模块, 但我确实通过自己查阅资料, 解决问题的能力得到了很大的提高,对系统的设计有了新的认识,最后,通过这次的设计,我已掌握了系统的设计流程, 同时也掌握了一些相关技术, 增强了动手能力并积累了一定的经验,从而为以后的工作奠定了基础。19精品 料推荐参考文献:1 曾长军、朱剑峰sqlserver 数据库原理及应用 北京 :

21、人民邮电出版社 ,20072 杨继平、吴华 sql server2000 北京:清华大学出版社, 20003 刘韬 visual basic6.0 数据库系统开发实例北京:人民邮电出版社, 20024 刘耀儒新概念 sql server2000 教程北京:科海集团公司, 20015 王立丰 visual basic 中标项目案例导航北京:科学出版社, 20036 姚蔚 visualbasic 数据库开发及工程实例北京:人民邮电出版社,200320精品 料推荐致谢通过这次的数据库设计,我学到了很多,不仅是知识上的获得同时也得到了精神上的支持, 很感谢彭老师给我们这次实际动手操作的机会,让我们去体

22、验一下做设计所出现的种种问题,让我学到了不少经验, 对数据库这门课有了进一步的加深和学习。还有虽然我的同学也不是很了解vb但我一提出问题她们都会在百忙中抽出时间帮我去想, 去网上找资料,真的很感谢她们, 由于时间特紧张,我只能在晚上去做设计, 一做就是一两点, 我也给我的室友们带来了不便,但她们很能体谅我,给我创造条件去学习,而且还督促我、问我做到哪一个环节了,实现了没有啊等等, 也给我带来了不少的勇气, 让我更加坚信地去做下去, 最后终于做完后,让她们看看我的成果,感觉很好,没有白费,如果没有她们做坚强后盾,我也不会完成的那么快, 在这里我忠诚的对彭老师和帮助我的同学说声谢谢!21精品 料推

23、荐附录vb6.0 连数据库1. 使用 ado(activex data object)数据控件连接sql server 数据库连接方式在连接数据库前,首先要在visual basic 6.0菜单中 “工程 ” 引“用 ”中选择microsoft activex data objects 2.8 library和 microsoft activex data objectsrecordset 2.8 library这两个组件。2.通过配置 odbc 环境,进行数据源的注册,对数据库进行连接、访问和操作。2.1 odbc 数据源分为以下三类:( 1)用户 dsn :只有创建数据源的用户才可以使用他

24、们自己创建的数据源,而且只能在当前的计算机上使用。( 2)系统 dsn :任何使用你的计算机的用户和程序都可以使用的dsn 。( 3)文件 dsn :除了具有系统 dsn 的功能之外,还能被其它用户在其它计算机上使用。2.2 创建 odbc 数据源的步骤( 1 打开开始 /设置 /控制面板 /管理工具 /odbc 数据源。( 2 双击 odbc 图标,启动 odbc 数据源。( 3 换到 “用户 dsn”标签,单击 “添加 ”。选择 sqlserver 作为数据源的驱动程序。( 4 为数据源命名 bankdb ,按提示操作即可创建 odbc 数据源。2.3 创建数据库连接创建数据源是进行有源数

25、据库连接的第一步,下面同样是运用ado 对象模型的主要元素 connection (连接)进行源数据库连接。connectionstring是 connection 对象的属性名称,提供数据提供者或服务提供者打开到数据源的连接所需要的特定信息,包括database 、diver 、dsn 等。( 1) database :字符串表达式,指定服务器上的数据库名称。( 2) diver: 字符串表达式,指定驱动程序( 3) server: 指定服务器名称。( 4) dsn :字符串表达式,指定连接的 odbc 数据源名称。利用已配置好的 odbc 数据源进行连接。22精品 料推荐创建 odbc 数

26、据源名称为 bankdb ,通过 ado 与数据库 student 进行连接,代码如下:public user_id as stringpublic function chaxun(sqlstr as string) as adodb.recordset dim cn as new adodb.connectiondim cn_str as stringcn_str = diver=sql server;server=.;dsn=bankdb; database=bankdbcn.open cn_strdim rs as new adodb.recordsetrs.open sqlstr, c

27、n, adopendynamic, adlockoptimisticset chaxun = rsend function2.4 登录代码如下 ;private sub command1_click()dim rst as new adodb.recordsetdim str as stringstr = select * from user_info where user_id= + text1.text + set rst = chaxun(str)if not rst.eof thenif trim(rst.fields(1) = text2.text thenuser_id = tex

28、t1.textmain.showme.hideelsemsgbox 密码错误! , vbokonly + vbexclamationend ifelsemsgbox 账户名错误! , vbokonly + vbexclamationend if23精品 料推荐end sub2.5 主界面代码如下:private sub 按卡号删除 _click()scch.showscch.label2.caption = 卡号 end subprivate sub 按姓名删除 _click()scch.showscch.label2.caption = 姓名 end subprivate sub 浏览储户信

29、息 _click()llch.showend subprivate sub 添加储户信息 _click()tjch.showend subprivate sub 修改个人密码 _click()xgmm.showend sub2.6 添加储户代码如下:private sub command1_click()dim rst as new adodb.recordsetdim str as stringstr = select * from iuserset rst = chaxun(str)rst.addnewrst.fields(0) = text1.textrst.fields(1) = te

30、xt2.textrst.fields(2) = text3.textrst.fields(3) = text4.text24精品 料推荐rst.fields(4) = text5.textrst.fields(5) = text6.textrst.updatemsgbox 添加成功! , vbokonly + vbexclamationend sub2.6 浏览储户信息代码 :dim rst as new adodb.recordsetprivate sub command1_click()rst.movefirstdisplayend subprivate sub command2_clic

31、k()rst.movepreviousif rst.bof thenmsgbox 已经是第一条记录了! , vbokonly + vbexclamationrst.movefirstend ifdisplayend subprivate sub command3_click()rst.movenextif rst.eof thenmsgbox 已经是最后一条记录了!, vbokonly + vbexclamationrst.movelastend ifdisplayend subprivate sub command4_click()rst.movelastdisplay25精品 料推荐end

32、 subprivate sub form_load()dim str as stringstr = select*from iuserset rst = chaxun(str)displayend subprivate sub display()text1.text = rst.fields(0)text2.text = rst.fields(1)text3.text = rst.fields(2)text4.text = rst.fields(3)text5.text = rst.fields(4)text6.text = rst.fields(5)end sub2.7 删除储户信息代码如下

33、 :dim rs as new adodb.recordsetdim str as stringif label2.caption = 姓名 thenstr = select*from iuser where cname= + text1.text + elsestr = select * from iuser where cno= + text1.text + end ifset rs = chaxun(str)if rs.eof thenmsgbox 没有要删除的信息! , vbokonly + vbexclamation elsewhile not rs.eofrs.deleters.m

34、ovenext26精品 料推荐wendmsgbox 删除成功! , vbokonly + vbexclamationend ifend subprivate sub command2_click()unload meend subprivate sub form_load()end sub2.8 修改储户密码代码如下 :dim rs as new adodb.recordsetprivate sub command1_click()dim str as stringstr = select * from user_info where user_id= + text1.text + set rs = chaxun(str)if trim(rs.fields(1) = text1.text thenlabel2.visible = falselabel3.visible = truelabel4.visible = truetext1.visible = falsetext2.visible = truetext3.visible = truecommand1.visible = falsecomma

温馨提示

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

评论

0/150

提交评论