家庭理财系统数据库课程设计报告Word下载.docx

上传人:b****5 文档编号:19962521 上传时间:2023-01-12 格式:DOCX 页数:13 大小:208.20KB
下载 相关 举报
家庭理财系统数据库课程设计报告Word下载.docx_第1页
第1页 / 共13页
家庭理财系统数据库课程设计报告Word下载.docx_第2页
第2页 / 共13页
家庭理财系统数据库课程设计报告Word下载.docx_第3页
第3页 / 共13页
家庭理财系统数据库课程设计报告Word下载.docx_第4页
第4页 / 共13页
家庭理财系统数据库课程设计报告Word下载.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

家庭理财系统数据库课程设计报告Word下载.docx

《家庭理财系统数据库课程设计报告Word下载.docx》由会员分享,可在线阅读,更多相关《家庭理财系统数据库课程设计报告Word下载.docx(13页珍藏版)》请在冰豆网上搜索。

家庭理财系统数据库课程设计报告Word下载.docx

计算器,可以对活期存款、定期存款进行相应的计算,求其增长值。

收入查询,用户可以输入相应的查询条件进行数据查询,并且可以删除相应的数据。

支出查询,支出查询类似于收入查询,同样可以进行查询、删除操作。

个人信息,用户可以增加自己的个人信息,同时可以修改登录密码。

2.数据库需求和分析

a).数据结构(数据库中表的设计)

收入类别信息(收入类别,收入类别说明)

收入信息(收入编号,收入类别,日期,金额,备注)

支出类别信息(支出类别,支出类别信息)

支出信息(支出编号,支出类别,日期,金额,备注)家庭成员信息(称呼,,密码,用户名,生日)

b).数据项具体设置(建议放到数据库实施中)

编号

标识符

类型

长度

所属表名

1

用户名

vchar

15

家庭成员

2

密码

20

3

称呼

10

4

5

生日

char

6

收入类别

收入类别信息,收入信息

7

收入类别说明

50

收入类别信息

8

收入编号

int

*

收入信息

9

收入日期

收入金额

11

收入说明

12

支出类别

支出类别信息,支出类别

13

支出类别说明

支出类别信息

14

支出编号

支出信息

支出日期

16

支出金额

17

支出说明

概念结构设计

1.流程图(系统功能模块图)

 

a).收入类别信息

b).收入信息:

c).支出类别信息

d).支出信息:

e).家庭成员信息

f).综合以上E-R图模型,得出整个系统的E-R关系图:

三、逻辑结构设计

1.由E-R图转化的关系模式为:

收入类别信息(收入类别,收入类别说明)收入信息(收入编号,收入类别,日期,金额,备注)支出类别信息(支出类别,支出类别信息)支出信息(支出编号,支出类别,日期,金额,备注)家庭成员信息(称呼,,密码,用户名,生日)

2.对关系模式进行规化

在收入类别信息表中,收入类别为码,收入类别说明完全依赖于码,不存在部分依赖和传递依赖,达到第三式;

收入信息表中,收入编号为码,其他信息完全依赖于码,不存在部分依赖和传递依赖,达到第三式;

在支出类别信息表中,支出类别为码,支出类别说明完全依赖于码,不存在部分依赖和传递依赖,达到第三式;

支出信息表中,支出编号为码,其他信息完全依赖于码,不存在部分依赖和传递依赖,达到第三式;

家庭成员信息表中,用户名为码,其他信息完全依赖于码,不存在部分依赖和传递依赖,达到第三式;

3.数据库的完整性和安全性作何考虑?

安全性:

有两种角色:

老妈和普通家庭成员。

其中,老妈可以查看和修改任何表,拥有所有权限;

普通家庭成员可以修改自己的信息,其他表只有查询功能。

完整性:

按照表间的关系做了完整性约束、触发器和存储过程。

四、物理结构设计

1.数据库设计

首先需要对整个系统的数据库进行设计,本系统总共包括5表,分别为收入

类别信息表、支出类别信息表、收入信息表、支出信息表以及家庭成员信息表。

a).收入类别信息表

用于记录日常收入类别的相关信息,主要字段有日常收入类别名称、日常收入类别的说明信息,具体设计如图:

.ZUrUPinjirAS.Li,-.o_IncomeCatef^licai.sql.er(sa

J

列宕1数嶠娄塑1允许NJI值1

Icategoryvarchar(lO)厂

p

sayvart±

iar(5O)|<

厂「

b).收入信息表

用于记录日常收入数据的相关信息,主要字段有:

日常收入日期、金额、类

别、备注,具体设计如图:

^lUPUQVAH.Li...-dbv.Incomelicai.s

R-*・.(5a

列名

數据类型

允许Null值

idatc

diarflQ}

■category

varchar(io)

imoney

V3rdiar(50)

c).支出类别信息表

用于记录日常支出类别的相关信息,主要字段有:

日常支出类别名称、日常

支出类别的说明信息,具体设计如图:

d).支出信息表

用于记录日常支出数据的相关信息,主要字段有:

日常支出日期、金额、类别、备注,具体设计如图:

e).家庭成员信息表

用于记录用户个人信息数据的相关信息,主要字段有:

用户名、称呼、、密

码、生日,具体设计如图:

/WUPUQUAH.Li...licai.sql-..er〔討(

列名1

数据类型

允许Ndl值

|cherighLi

varehar(lfi)

r

name

vari±

Br{10)

birthday

char(lC)

r磺

Lis^mamc

vaircharfl5)

password

vardnar[20)

五、数据实施和维护

1.数据库的代码

--建表

--收入类别信息表

createtableIncomeCate

(Icategoryvarchar(10)primarykey,

sayvarchar(50)

--收入信息表createtableIncome(idintprimarykey,

idatechar(10),icategoryvarchar(10),imoneyint,isayvarchar(50),foreignkey(icategory)referencesIncomeCate(Icategory))

--增删改查

deletefromIncomewhereisaylike'

大一下学期%'

insertintoIncomevalues(6,'

2011-05-17'

'

补助'

2400,'

大一下学期助学金'

)updateIncomesetimoney=1200whereimoney=2400select*fromExpenseorderbyimoneydesc

--视图

--为收入类别中的补助类建立视图

createviewBuZhu_Income

as

selecticategory,imoney,idate,isay

fromIncome

whereicategory='

select*fromBuZhu_Income

--为收入类别中的补助类建立视图createviewBuZhu_Incomeas

--为支出类别中的学习类建立视图(在左侧视图文件夹下完成)select*fromStudy_Expense

--约束

useLiCai

createtablePersonalInfo

(Idint,

Isexchar

(2)

constraintC1check(Isexin('

男'

女'

)),

Ibirthdayvarchar(10)

constraintC2check(Ibirthdaylike'

%-%-%'

),

Iageint

constraintC3check(Iage>

0andIage<

100),

Ibloodvarchar(5)

constraintC4check(Ibloodin('

A型'

'

B型'

O型'

AB型'

)),

Iprovincevarchar(20),

Icityvarchar(20),

Iemailvarchar(30)

constraintC5check(Iemaillike'

%@%)'

Ioldpwdvarchar(10)

constraintC6notnull,

constraintPInfoKeyprimarykey(Id)

altertablePersonalInfo

dropconstraintC3

addconstraintC3check(Iage>

0)

addconstraintsex_defaultdefault'

forIsex

--触发器

createtriggercate_deleteonIncomeCate

fordeleteas

declare@BIcategoryvarchar(10)

print'

使用delete触发器级联删除Income表中相关的行'

select@BIcategory=Icategoryfromdeleted

删除的类别:

'

+@BIcategory

deleteIncomewhereIncome.icategory=@BIcategorygo

--测试

deletefromIncomeCatewhereIcategory='

小费'

createtriggerex_cate_deleteonExpenseCate

declare@Blcategoryvarchar(10)

select@BIcategory=lcategoryfromdeleted

删除的类别:

’+@BIcategory

deleteExpensewhereExpense.icategory=@BIcategory

--存储过程

createprocedureP_BuZhuas

selecticategory,imoney,idate,isay

fromIncomewhereicategory=补助'

execP_BuZhu

--在Expense数据库中,建立一个存储过程,统计消费大于等于的记录个数

createprocedureP_Expense@n

intoutput

select@=COUN(T)fromExpense

whereimoney>

=100

declare@nint

execP_Expense@noutput

printconvert(varchar(5),@i)

2.系统模块

a).收入和支出类别维护

b).添加收入和支出信息

c).定期和活期存款计算

d).收入记录查询

e).支出记录查询

家庭理财专冢

收入査洵收入数据

2012-11-26

补肋

1500

2012-08-20

打工

1300

2012-06-21

分红

300

2010-11-25

补助

1200

2011-05-17

2012-08-01

100

2000-0101

返回

六、总结和建议

本课程设计是利用Android开发的,系统功能已经基本实现。

但同时也存在很多不足的地方,比如整个系统还可以添加更多功能,外观上可以做进一步调整和修饰,以及用户资料的性和安全性还没有考虑周全。

这次课程设计,由于自己在知识、经验方面都存在着很多不足;

另外,在整个过程中忙于复习,没有充足的时间来跟老师和同学沟通。

因此,系统必然会存在一些缺陷和不足。

因为对家庭财务管理的整个流程不太熟悉,在需求分析时未能做到完全满足用户的需求,以致缺少了一些必要功能。

经过这次课程设计,我深刻体会到要做好一件完整的事情,需要有系统的思维方式和方法,对待一个新的问题,要有耐心,善于运用已有的资源来充实自己。

同时我也深刻地认识到,对待一个新事物时,一定要从整体考虑,完成一部之后再做下一步,这样对于系统而言才更加有效。

通过这次设计,我不仅对Android和SQLServer2008有了深刻的认识,积累了使用软件工程的思想来开发软件的经验,最重要的是摸索出了一套考虑问题和解决问题的方法,这对于我将来走上工作岗位受益匪浅。

实践出真知,这次课程设计使我得以将数据库、软件工程课程中所学的理论知识得以充分运用。

理论和实践相结合,动手能力得以很大的提高。

开发一个良好的系统需要丰富的知识,由于水平有限,系统不够完善,期待进一步改进。

七、参考文献

1.数据库系统概论

2.Android应用案例开发大全

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文

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

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