ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:117.42KB ,
资源ID:3682631      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3682631.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(批注家庭理财系统.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

批注家庭理财系统.docx

1、批注家庭理财系统 数据库课程设计家庭理财系统学生姓名: 学号: 系 别: 班 级: 专 业: 计算机科学与技术 指导教师: 陈 林 2010 年 6月 16日目录第一章 引言 1第二章 需求分析 22.1数据流图 22.2 数据字典 3第三章 概念结构设计 73.1 局部概念结构设计 73.2 全局概念结构设计 7第四章 逻辑结构设计 94.1 E-R图向关系模型的转换 94.2 数据模型的优化 9第五章 物理结构设计 115.1 索引的建立 115.2数据库的存储结构 11第六章 数据实施和维护 126.1建立数据库 126.2建立表 126.2.1建立用户信息表 126.2.2建立财务表

2、136.2.3建立收支关系表 136.3基本功能的实现 136.3.1建立存储过程命名为sfinance,用于插入finance表数据的存储过程: 136.3.2建立存储过程someone 用于查询按一定时间单个成员的收入情况: 146.3.3建立存储过程allusers 用于查询按一定时间全体成员的收入情况: 146.3.4建立存储过程maxin目的查询按一定时间收入金额最多的成员信息: 146.3.5建立存储过程minin目的查询按一定时间收入金额最少成员信息: 1564授权 156.4.1 用户用密码登陆系统 156.4.2 给admin用户授权 166.5建立索引 166.5.1在成员

3、表的多个字段建立索引 166.5.2在财务表的多个字段建立多个索引 16总结 17参考文献 18致谢 18第一章 引言家庭和企业是社会的细胞,就所看到的情况来看,我们一向对企业的财务与金融给予相当的相当的重视,家庭则被忽略。但是,随着家庭收入和财富的增长以及市场的各种不确定性越来越大并且越来越影响到家庭的各种行为,家庭理财(储蓄与投资)变得受重视了。而且,人人都知道,在现代社会里要维持一个家庭并不容易,尤其是能使一个家庭过上好日子更不容易。因为过日子不可避免地要涉及必要的经济负担,一个家庭若没有起码的经济能力以负担各种家庭的需求,家庭势必解体,家庭成员也无法在家庭内生存下去。如何管理好家庭经济

4、,是维系一个家庭及过好日子的至关重要问题,因此,家庭理财是摆在每个家庭面前不可忽视的重要课题。多年以来,人们都使用传统的方式记录或管理家庭或自己的财务情况。这种管理和记录方式不仅不便于长期保存,也存在着不可避免的缺点,如效率太低、保密性太差。时间一长,伴随着居民收入水平的提高和居民各种消费和收入的多样性,家庭理财所需要的信息就会越来越多,就会产生大量的文件和数据,这样就会对查阅、更新、保存等方面都产生不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已经逐渐被人们认识并掌握。如果使用计算机对家庭理财信息进行管理具有传统手工管理所无法比拟的优点。如:统计方便、查询容易、可靠性高

5、、保密性好、更新方便等。这些优点能极大地提高家庭理财管理的效率,大大降低居民在信息管理精力上的投入,更加合理地分配手中的财产。因此,开发一个能够管理家庭内部各种财务信息的家庭理财系统是一件十分必要的事情。第二章 需求分析随着社会的发展,人们对理财观念的提升,现在绝大多数家庭都想通过一种科学的方法,将自己的剩余资金组织起来,以便应对即将发生的突发事件,如:生病,子女上学,买房等大项目的开支!然而,人们发现往往计划赶不上变化,有限的资金总在不经意间被花掉。人们如何控制手中有限的资金不被用在一次次不必要的消费上呢?因此家庭理财软件应运而生,用户通过家庭理财系统,可以了解自己或整个家庭的收入及消费情况

6、,从中可以直观的看到有哪些是是不必要的支出,从而达到理财的目的。此次我所做的课题是家庭理财系统,它将实现以下几个功能: 家庭财务总监负责家庭各成员信息管理及密码管理,以及家庭财务总监本人的收入、支出等管理。 家庭各成员身份验证后负责其自身的收入、支出等帐务管理,包括时间信息、金额、来源或用途等信息。 家庭各成员均可以按时间等条件查看全家或某成员的收入、支出、余额等统计信息,可以按时间查看收入、支出、余额最多和最少的成员信息。2.1数据流图数据流图(DDF)是表达数据和处理之间的关系的方法,如图2.1所示。图2.1 数据流图数据流图表达了数据和处理之间的关系,数据字典则是系统中各类数据描述的集合

7、,是进行详细的数据收集和数据分析所获得的主要成果。2.2 数据字典数据字典(DD)通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。表2.1 数据项的组成数据项名数据项含义说明数据类型数据长度id家庭成员的身份证号char 20username家庭成员的姓名char10password密码char10ch家庭成员的称呼char8call家庭成员的电话号码char20cbirth家庭成员的生日char10zjno资金编号char10data资金流入、

8、流出时间char10mone流通金额varchar50typ收支类型char 4way获得或使用资金的方式char10表2.2 数据结构的组成数据结构名含义组成users家庭成员信息表家庭成员的身份证号、姓名、称呼、电话号码、生日、密码finance财务表记账号码、资金编号、身份证号码、流入流出时间、金额、收支类型shouzhi收支表记账号码、名称、收支类型表2.3 数据流的组成数据流名说明数据流来源数据流去向登入系统核对用户名和密码家庭用户功能分配查询数据按照用户的选择进入查询模块功能分配查询分类查询支出按照时间查询出某人或全部成员的支出查询分类支出清单查询收入按照时间查询出某人或全部成员的

9、收入查询分类收入清单查询信息库按照时间查询出某人或自己的信息查询分类信息库选择支出进入支出模块功能分配写入支出输入支出数据输入支出清单写入支出支出清单选择收入进入收入模块功能分配写入收入输入收入数据输入收入清单内写入收入收入清单信息修改按照用户的选择进入信息修改模块功能分配信息修改修改数据将自己的信息修改后存入信息库信息修改信息库家庭总监功能只有家庭总监才能进入功能分配成员创建、删除录入成员数据将成员创建或删除成员创建、删除信息库表2.4 数据存储的组成数据存储名输入数据流组成支出清单查询支出和输入支出数据资金的编号、流出时间、金额、用途、使用方式、家庭成员的编号收入清单查询收入和输入收入数据

10、资金的编号、流入时间、金额、来源、家庭成员的编号信息库修改数据、录入或删除成员数据家庭成员的身份证号、姓名、称呼、号码、生日表2.5 处理过程处理过程名输入输出处理查询分类查询数据查询支出、收入、自己的信息按照时间查出相应的结果写入支出选择支出功能输入支出数据将支出的数据存入支出清单中写入收入选择收入功能输入收入数据将收入的数据存入收入清单中信息修改信息修改功能修改数据将信息库内原有的数据进行修改成员变动财务总监功能添加或删除成员数据添加新成员或删除旧成员的数据 第三章 概念结构设计3.1 局部概念结构设计图3.1 家庭成员实体属性图图3.2 财务实体属性图3.2 全局概念结构设计每一个家庭成

11、员都有属于自己的账户,通过对账户的“收支”来进行账户的管理。收支中和家庭成员中的身份证号发生冲突,消除冗余;而收支和账务中的记账号码发生冲突,同理消除。将局部概念设计的E-R图进行分析,最终得到图3.3的家庭理财系统E-R图。 m图3.3 家庭理财系统E-R图第四章 逻辑结构设计4.1 E-R图向关系模型的转换关系模型的逻辑结构是一组关系模式的集合。将图3.1所示的E-R图,转换为关系模型,关系的码用下划线标出。家庭成员(身份证号,生日,姓名,称呼,电话号码,密码)此为家庭成员对应的关系模式。收支(记账号码,身份证号,时间,金额)此为收支与成员之间的关系模式,主码为记账号码,身份证号,外码为记

12、账号码,身份证号。 财务(记账号码,身份证号,收支类型,用途,金额)此为账务的关系模式,主码为记账号码,外码为身份证号码,该关系模式包含了联系“收支”所对应的关系模式。4.2 数据模型的优化为了进一步提高数据库应用系统的性能,还应该根据应用需要适当地修改、调整数据库的结构,这就是数据模型的优化。对于成员的关系模式,可以将其转换为关系模式的属性集合为:U=id,username,cbirth,ch,call,password根据现实世界的事实告诉我们(1) 一个身份证号码对应一个人的姓名,生日,称呼,电话,密码;(2) 一个人姓名可以对应多个身份证;(3) 一个生日可以有几个人;(4) 一个称呼

13、对应一个身份证;(5) 一个电话对应一个身份证;(6) 一个密码对应一个身份证;所以 F=id-username,id-cbirth,id-ch,id-call,ch-id,call-id,password-id 因为既不存在部分依赖,也不存在传递依赖,所以属于3NF,但是因为call-id因为call是非主属性,所以不属于BCNF;对于收支的关系模式,可以将其转换为关系模式的属性集合为:U=id,jzno,data根据题目要求:F=(id,jzno)-data,(id,jzno)-mone 因为即不存在部分依赖,也不存在传递依赖,不存在非主码依赖主码,所以属于BCNF。对于财务的关系模式,可

14、以将其转换为关系模式的属性集合为:U=id,jzno,type,way根据题目要求:F=因为即不存在部分依赖,也不存在传递依赖,所以属于3NF 。但是因为call-id,call是非主属性 所以不属于BCNF。第五章 物理结构设计数据库的物理设计通常分为两步:1 确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构。2 对物理结构进行评价,评价的重点是时间和空间效率。5.1 索引的建立索引的选择:如果一个属性经常在查询条件中出现,要考虑在这个属性上建立索引。如果一个属性经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引。5.2数据库的存储结构选择在SQL SERVER

15、2005上实现数据库后台设计。Microsoft SQL Server2005 是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。自定义窗体收集信息。数据表示图可以使数据库一目了然,还提供了排序功能。Microsoft SQL Server2005也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。根据掌握的知识,设计了一些存储过程,这些都为数据库的功能实现提供了很好的帮助,这些功能将在数据实施和维护段详细说明。第六章 数据实施和维护用SQL SERVER 2005建立数据库结构,此数据库我取名为:familyfinance,加载(

16、测试/虚拟)数据,能体现对数据库的保护(安全性和完整性控制等)。实现各种查询、链接应用程序,并能对数据库做简单的维护操作。6.1建立数据库create database familyfinance 6.2建立表6.2.1建立用户信息表create table admin(adminname char(10) primary key, password char(10) ) create table users(id char(20)primary key,username char(20),password char(10),ch char(8),call char(20),cbirth ch

17、ar(10)将默认的家庭财务总监admin输入到admin表中,便于今后管理员登录。insert into adminvalues(admin,admin)6.2.2建立财务表create table finance(zjno char(10) primary key, data char(10), mone varchar(50),typ char(4),way char(10)6.2.3建立收支关系表create table shouzhi(zjno char(10),id char(20),data char(10), mone varchar(50),primary key (zjno

18、,id),foreign key(zjno)references finance(zjno),foreign key(id)references users(id)6.3基本功能的实现6.3.1建立存储过程命名为sfinance,用于插入finance表数据的存储过程:create procedure sfinancezjno char(10),data char(10),mone varchar(50),typ char(4),way char(10)asinsert into financevalues(zjno,data,mone,typ,way)go6.3.2建立存储过程someone

19、 用于查询按一定时间单个成员的收入情况:create procedure someonedata char(10),username char(20)asselect username,ch,typ,data,monefrom users,finance,shouzhi ,someonewhere finance.jzno=shouzhi.jzno and users.id=shouzhi.id and finance.typ=收入and shouzhi.data=data and users.username=username6.3.3建立存储过程allusers 用于查询按一定时间全体成员

20、的收入情况:create procedure allusersdata charasselect username,ch,typ,data,monefrom users,finance,shouzhi,alluserswhere finance.jzno=shouzhi.jzno and users.id=shouzhi.id and finance.typ=收入and shouzhi.data=data;6.3.4建立存储过程maxin目的查询按一定时间收入金额最多的成员信息:create procedure maxindata charasselect users.*from users,

21、finance,shouzhi,maxinwhere shouzhi.id=users.id and shouzhi.jzno=finance.jzno and finance.typ=收入 and shouzhi.data=data and shouzhi.mone=(select max(mone) from shouzhi,finance where shouzhi.jzno=finance.jzno andfinance.typ=收入);6.3.5建立存储过程minin目的查询按一定时间收入金额最少成员信息:create procedure minindata charasselect

22、 users.*from users,finance,shouzhi,mininwhere shouzhi.id=users.id and shouzhi.jzno=finance.jzno and finance.typ=收入and shouzhi.data=data and shouzhi.mone=( select min(mone) from shouzhi,finance,minin where shouzhi.jzno=finance.jzno and finance.typ= 收入) 64授权6.4.1 用户用密码登陆系统create procedure dlusername c

23、har(8),password char(10)asselect idfrom users where id=username and password=password6.4.2 给admin用户授权exec sp_addlogin mytest,123exec sp_adduser mytestgrant update, deleteon usersto mytest6.5建立索引6.5.1在成员表的多个字段建立索引create unique index id on users(id)6.5.2在财务表的多个字段建立多个索引create unique index data on finan

24、ce(data)create unique index mone on finance(mone DESC)总结时光飞逝,转眼间课程设计将要结束,回想这段时间的经历,虽然很疲劳,但是我觉得很充实,很有意义,学到很多以前没有接触的知识,懂得很多以前不明白的东西。这次课程设计是对我一学期以来所学知识的一次总结,也是一次检验,更是我对于数据库系统概论的一次系统的学习。通过这次课程设计,我更进一步地学习了SQL Server2005数据库,并独立完成了本系统的构思、设计、调试及其完善,这个设计可以基本满足家庭和个人理财的需要,基本满足了用户对添加,修改删除和查询的需要。我个人认为现在好多的理财软件都做

25、的太复杂了,对于一般的家庭其常用到的无非就是收支记帐,所以我做的这个软件可以很好的满足他们的需要,当然我的设计中也存在着一些不足之处,比如用户的权限还不是很完善。在课程设计中,我遇到了很多的困难。从无从下手到思路清晰,从不断出错到正常运行,从失败到成功,我一步一个脚印,从无到有,学会了很多很多。我想说只有不断实践才是成功的关键!以上是我课程设计过程中取得的成绩及不足之处的总结。通过这次课程设计,我对程序设计有了更深刻的体会,主要是要把握全局性。参考文献1数据库系统概论(第四版) 王珊 萨师煊著2SQL SERVER 2000 课程设计案例精编 李昆主编致谢本次课程设计是在指导老师陈林老师的悉心指导下完成的,在程序和实验报告册的修改上给了我很大的帮助。陈老师知识渊博且治学严谨,对我严格要求使我受益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高。这对于我以后的学习将会有一种巨大的帮助,感谢他的耐心辅导。感谢身边的同学们,在整个设计过程中的各个阶段给予一些意见和建议,使系统的界面更加完美,功能更加完善。至此,本课题圆满完成,感谢*学院给予了这个学习机会,让我体会到了软件开发的乐趣。感谢老师们尤其是我的指导老师的认真负责的教导,感谢我的同学们给予的帮助。是这个温暖的集体成就了此系统,这将是我人生路上又一个崭新的起点。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1