您好,欢迎访问三七文档
1课程设计说明书课程设计名称:数据库课程设计课程设计题目:家庭财务管理系统学院名称:信息工程学院专业:计算机应用与技术班级:2一、数据库需求分析:对于家庭财务管理系统而言,整个系统就是一个加工家庭财务管理。从用户的需求描述可知,管理员是数据的源点,普通用户是数据的终点。另外,管理员需要录入用户信息、理财信息和日常管理信息,说明用户信息、理财信息和日常管理信息是数据流;同样,统计请求和统计结果也是数据流。根据上述分析,得到如图所示的第1层DFD。根据第1层DFD图绘制下一层数据流图时,细化第1层的加工家庭财务管理,从而描述系统的主要功能。从第1层DFD得知,用户信息是管理员需要录入的一个信息,因此加入一个加工录入用户信息,同样得到录入理财项目信息、录入日常管理信息两个加工。另外,数据流统计报告请求和统计报告结果应该由加工统计报告来完成。这样,我们用录入用户信息、录入理财项目信息、录入日常管理信息和统计报告四个加工代替第1层的家庭财务管理,同时增加这些数据流对应的数据存储,即用户、理财和日常管理,最后得到如图所示的第2层DFD。3继续进行分解,分析第2层DFD中的加工统计报告。用户统计报告时需要提供合法性检查,因此,统计报告可以分解为合法性检查和统计两个处理步骤,从而形成如图所示的第3层DFD。4家庭成员合法性检查统计活期收入借入合法查询条件查询条件查询条件统计报告结果统计报告请求三层数据流图户主收入来源家庭成员成员信息收入来源信息支出类型家庭成员成员信息收入信息存储经手人活期银行账户定期银行账户定期银行信息活期银行信息借贷经手人借入款借出款借出信息借入信息收入人员支出人员支出信息存款信息借贷信息支出定期借出5数据字典(一)、数据项1数据项名:编号;数据类型:int;数据长度:4;2数据项名:姓名;数据类型:nvarchar;数据长度:50;3数据项名:备注;数据类型:nvarchar;数据长度:50;4数据项名:收入来源;数据类型:nvarchar;数据长度:50;5数据项名:支出类型;数据类型:nvarchar;数据长度:50;6数据项名:收入日期;数据类型:datetime;数据长度:8;7数据项名:收入人员;数据类型:int;数据长度:4;8数据项名:收入金额;数据类型:float;数据长度:16;9数据项名:支出日期;数据类型:datetime;数据长度:8;10.数据项名:支出人员;数据类型:int;数据长度:4;11数据项名:支出金额;数据类型:float;数据长度:16;12数据项名:账户编号;数据类型:int;数据长度:4;13数据项名:日期;数据类型:datetime;数据长度:8;14数据项名:经手人;数据类型:nvarchar;数据长度:50;15数据项名:存入金额;数据类型:float;数据长度:16;16数据项名:支出金额;数据类型:float;数据长度:16;17数据项名:初始金额;数据类型:float;数据长度:16;18数据项名:余额;数据类型:float;数据长度:16;19数据项名:预还日期;数据类型:datetime;数据长度:8;20数据项名:借出日期;数据类型:datetime;数据长度:8;621数据项名:开户银行;数据类型:nvarchar;数据长度:50;22数据项名:开户日期;数据类型:datetime;数据长度:8;(二)、数据结构23数据结构名:用户;组成:编号+姓名+备注;24数据结构名:收入来源;组成:编号+收入来源;25数据结构名:支出类型;组成:编号+支出类型;26数据结构名:日常收入;组成:编号+收入日期+收入人员+收入来源+收入金额+备注;27数据结构名:日常支出组成:编号+支出日期+支出人员+支出类型+支出金额+备注;28数据结构名:活期账户;组成:编号+账户编号+日期+经手人+存入金额+支出金额+备注;29数据结构名:定期账户;组成:编号+账户编号+日期+经手人+存入金额+支出金额+备注;30数据结构名:借入款;组成:编号+借入日期+预还日期+借入人+出借人+借入金额+备注;31数据结构名:借出款;组成:编号+借出日期+预还日期+出借人+借贷人+借出金额+备注;32数据结构名:活期银行账户;组成:编号+账号+账户类型+卡号+账户户主姓名+初始金额+余额+开户银行+开户日期;33数据结构名:定期银行账户;组成:编号+账号+账户类型+卡号+账户户主姓名+初始金额+余额+开户银行+开户日期;(三)、数据流34数据流名:家庭成员信息;数据流来源:户主;数据流去向:家庭成员信息表735数据流名:收入信息;数据流来源:户主;数据流去向:家庭成员信息表36数据流名:支出信息;数据流来源:户主;数据流去向:家庭成员信息表37数据流名:统计报告请求;数据流来源:户主;数据流去向:统计报告38数据流名:统计报告结果;数据流来源:统计报告;数据流去向:户主家庭成员信息包括的数据项由:编号,姓名,备注。家庭成员收入来源信息,包括的数据项有:编号,收入来源。家庭成员支出类型信息,包括的数据项有:编号,支出类型。收入来源信息,包括的数据项有:编号,收入日期,收入人员,收入来源,收入金额,备注。支出类型信息,包括的数据项有:编号,支持日期,支出人员,支出类型,支出金额,备注。活期账户信息,包括的数据项有:编号,账户编号,日期,经手人,存入金额,支出金额,备注。定期账户信息,包括的数据项有:编号,账户编号,日期,经手人,存入金额,支出金额,备注。借入款信息,包括的数据项有:编号,借入日期,预还日期,借入人,出借人,借入金额,备注。借出款信息,包括的数据项有:编号,借出日期,预还日期,出借人,借贷人,借出金额,备注。活期银行账户信息,包括的数据项有:编号,账号,账户类型,卡号,账户户主姓名,初始金额,余额,开户银行,开户日期。定期银行账户信息,包括的数据项有:编号,账号,账户类型,卡号,账户户主姓名,初始金额,余额,开户银行,开户日期。8二、数据库概念结构设计数据库概念结构设计就是在以上数据项和数据结构的前提下,设计出满足用户需求的实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。概念模型最常用的描述方法是E-R图(“实体-联系”图)描述法,E-R图主要有3个要素:实体:实体是以矩形表示。实体就是数据库数据中具有实际意义的主体,如在前文分析的实体就是“消费人员”和“消费品”。属性:属性用椭圆表示。就是实体所拥有的特性,如果是在面向对象程序设计中,可以将“实体”和“属性”对应为“对象”和“对象中的数据成员”的关系。联系:联系用菱形表示。联系是实体与实体之间发生的动作、从属或其他依赖关系。本软件规划出的实体有:用户信息实体,收入来源信息实体,支出类型信息实体,日常收入信息实体,日常支出信息实体,活期银行账户信息实体,定期银行账户信息实体。概念模型就是对信息世界的抽象建模,狭义的信息世界可以专指数据库中的数据,那么概念模型就可以理解为对数据库数据的抽象建模。各个实体具体的描述E-R图如下:活期帐户信息实体编号、帐户编号存入金额备注日期支出金额经手人活期银行账户信息实体E-R图:9定期帐户信息实体编号、帐户编号存入金额备注日期支出金额经手人定期银行账户信息实体E-R图:借入款信息实体编号、借入日期出借人备注预还日期借入金额借入人借入款信息实体E-R图:借出款信息实体编号、借出日期借贷人备注预还日期借出金额出借人借出款信息实体E-R图:用户信息实体编号备注权限密码姓名用户信息实体E-R图:10家庭成员信息实体编号备注姓名收入来源编号家庭成员收入来源信息实体家庭成员支出类型信息实体编号支出类型收入来源信息实体E-R图:收入来源信息实体编号收入日期收入来源备注收入人员收入金额支出类型信息实体E-R图:支出类型信息实体编号支出日期支出来源备注支出人员支出金额11日常支出信息实体编号支出日期支出来源备注支出人员支出金额日常支出信息实体E-R图:日常收入信息实体编号收入日期收入来源备注收入人员收入金额日常收入信息实体E-R图:活期银行帐号信息实体编号开户日期帐户户主姓名开户银行余额帐户类型初始金额卡号帐号活期账户信息实体E-R图:定期银行帐号信息实体编号开户日期帐户户主姓名开户银行余额帐户类型初始金额卡号帐号定期账户信息实体E-R图:12E-R总图:家庭成员收入来源信息实体家庭成员支出类型信息实体借入宽信息实体定期银行帐户信息实体活期银行帐户信息实体定期帐户信息实体活期帐户信息实体借出款信息实体支出类型实体收入来源实体查询用户信息实体管理查询管理管理管理管理管理管理管理N11NNNNNNNNN1111111113三、数据库逻辑结构设计逻辑关系:家庭成员信息(编号,姓名,备注);家庭成员收入来源(编号,收入来源)家庭成员支出类型(编号,支出类型);活期银行账户(编号,帐号,账户类型,卡号,账户户主姓名,初始金额,余额,开户银行,开户日期);定期银行账户(编号,帐号,账户类型,卡号,账户户主姓名,初始金额,余额,开户银行,开户日期);日常收入信息(编号,收入日期,收入人员,收入类型,收入金额,备注};日常支出信息(编号,支出日期,支出人员,支出类型,支出金额,备注);活期账户信息(编号,账户编号,日期,经手人,存入金额,支出金额,备注);定期账户信息(编号,账户编号,日期,经手人,存入金额,支出金额,备注);借出款信息(编号,借出日期,预还日期,出借人,借贷人,借出金额,备注);借入款信息(编号,借入日期,预还日期,借入人,出借人,借入金额,借入金额);根据以上的信息实体E-R图和逻辑关系,本小型家庭财务管理软件数据库中的各个表格的设计结构如下面的表:表4-1家庭成员表Family字段名字段说明数据类型字段长度必填字段主键FamilyID编号int4是是FamilyName姓名nvarchar50是否FamilyPwd密码nvarchar50是否FamilyType权限int4是否14FamilyBZ备注nvarchar50否否表4-2收入来源表IncomeType字段名字段说明数据类型字段长度必填字段主键IncomeTypeID编号int4是是IncomeTypeType收入来源nvarchar50是否IncomeTypeDate收入日期nvarchar50是否IncomeTypeMember收入人员nvarchar50是否IncomeTypeSum收入金额int4是否IncomeBZ备注nvarchar50否否表4-3支出类型表OutputType字段名字段说明数据类型字段长度必填字段主键OutputTypeID编号int4是是OutputTypeType支出类型nvarchar50是否OutputTypeDate支出日期nvarchar50是否OutputTypeMember支出人员nvarchar50是否OutputTypeSum支出金额int4是否OutputBZ备注nvarchar50否否表4-4活期银行账户表LiveBank字段名字段说明数据类型字段长度必填字段主键LiveBankID编号int4是是LiveBankNo帐号nvarchar50是否LiveBankType账户类型nvarchar50是否LiveBankKa卡号nvarchar50是否LiveBankName账户户主姓名nvarchar50是否LiveBankChu初始金额float8是否LiveBankYu余额float8是否LiveBankBank开户银行nvarchar50是否LiveBankDate开户日期datetime8是否15表4-5定期银行账户表FixBank字段名字段说明数据类型字段长度必填字段主键FixBankID编号int4是是FixBankNo帐号nvarchar50是否FixBankType账户类型nvarchar50是否FixBankKa卡号nvarchar50是否FixBankName账户户主姓名nvarchar50是否FixBankChu初始金额float8是否FixBankYu余额
本文标题:财务管理系统
链接地址:https://www.777doc.com/doc-1167795 .html