数据库技术课程设计_第1页
数据库技术课程设计_第2页
数据库技术课程设计_第3页
数据库技术课程设计_第4页
数据库技术课程设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

数据库技术课程设计数据库技术课程设计 题目:题目: 财务管理系统 姓名:姓名: 冯燕 学号:学号: 33 班级:班级: 网络 1002 时间:时间: 2011 年 6 月 31 日 目 录 1.需求分析.1 1.1 财务功能管理系统的功能分析1 1.2 财务功能管理系统的功能图1 2.概念结构设计1 3.逻辑结构设计3 4.数据库设计3 4.1 数据库和各表的创建 3 4.1.1 数据表结构设计3 4.1.2 创建数据表 SQL 脚本.3 4.1.3 数据表快照.4 4.2 系统功能实现 .5 5.设计总结.5 参考文献6 财务管理系统 摘要:财务管理系统是利用互联网的管理系统。家庭和个人的用户使用此 软件,可以方便的进行个人理财,投资管理。财务管理系统从生活实际出发, 充分考虑到个人,家庭需要,秉承高效、实用、人性化的设计理念,财务系统 通过对用户财务的管理,让用户可以轻松进行对财务的记录、查询、修改、删 除和有效的分析财务的收支状况,用户可以将自己的每一笔收入和支出输入到 数据库中。达到了对财务的透明、管理的重要要求。让本系统实现了对财务的 有效管理。 关键词:财务、分析、管理、查询、美工。 1.需求分析 本文主要介绍了财务管理系统的设计与实现。财务管理系统是一个基于网 络的信息管理系统,它具有操作简单、成本低廉、效率高等优点,而且没有区 域限制。 1.1 财务管理系统的功能分析 通过对财务内容的分析和查阅会计资料基本知识理解,一个标准的财务系 统应该具备以下功能: 1)可以进行对用户的基本资料管理。 2)可以在管理员的权限下进行对用户的管理。 3)可以进行用户凭证管理。 (用户权限) 4)可以进行账簿管理。 5)可以进行财务的收支管理。 6)可以进行工资的管理。 7)可以进行财务的分析管理。 8)可以进行系统管理。 (升级与维护) 1.2 财务管理系统的功能图 根据以上需求分析,财务管理系统功能如图 1-1 所示。 个人个人 财务财务 管理管理 系统系统 家庭家庭 管理管理 员管员管 理理 用户用户 管理管理 个人个人 用户用户 管理管理 用户用户 成员成员 管理管理 家庭家庭 成员成员 账薄账薄 的浏的浏 览和览和 分析分析 家庭家庭 账薄账薄 的浏的浏 览和览和 分析分析 家庭家庭 日常日常 开销开销 的浏的浏 览和览和 分析分析 家庭家庭 日常日常 借贷借贷 的分的分 析和析和 管理管理 个人个人 消费消费 记录记录 的实的实 现现 个人个人 账簿账簿 浏览浏览 家庭家庭 日常日常 投资投资 的管的管 理和理和 分析分析 家庭家庭 日常日常 财务财务 报表报表 的分的分 析析 计算计算 器功器功 能能 切换切换 用户用户 个人个人 银行银行 存储存储 管理管理 个人个人 借代借代 的管的管 理理 个人个人 账户账户 的管的管 理理 个人个人 财务财务 报表报表 的分的分 析析 2.概念结构设计 1)用户实体及属性 E-R 图:如图 2-1 用户 用户名 密码 管理员 用户 ID 2-1 2)账簿实体及属性 E-R 图:如图 2-2 所示 帐簿 帐簿说明 用户 ID 帐簿类型 帐簿名 帐簿 ID 3)支出实体及属性 E-R 图:如图 2-3 所示 2-2 支出表 支出类型 支出金额收入类型 登记时间 登记说明 余额账簿 ID 收入金额 登记人 账单 ID 4)借出实体及属性 E-R 图:如图 2-4 所示 借出表 借出 ID 借出金额账簿 ID 借出人 归还时间 登记人 备注 5)投资实体及属性 E-R 图:如图 2-5 所示 2-3 2-4 投资表 账簿 ID 银行资金 存储时间 银行名 存储账号 利率 登记人 投资 ID 登记说明 2-5 6)借入实体及属性 E-R 图:如图 2-6 所示 借入表 登记人 登记时间 借入时间 借入人 借入金额 账簿 ID 借入 ID 备注 7)个人财务管理系统 E-R 图(各实体属性略去) ,如图 2-7: 2-6 用户 借出 账簿 支出 借入 投资 使用 属于 属于 属于 属于 2-7 3.逻辑结构设计: 对个人财务管理系统 E-R 图分析,结合各实体属性 E-R 图,考虑,本系 统的逻辑关系结构。 (说明:“#”表示主键,下划线表示外键) (1).用户表的逻辑关系模式: Users(uid#,uname,pwd,admin) (2) 账簿表中的逻辑关系模式: Zb (zdid#,uid,zbname,ztype,zbintro) (3)支出表的逻辑关系: Zc(zdid#,zbid, sj, sztype, zj, zjtype, djp, ditime, djre, lost) (4)投资表中的逻辑关系: Tzb(Zdid#,Zbid,Yhz,Zctime,Yname,Czm,Lllv,Djp,tzr) (5)借出表中的逻辑关系: Jc(jdid#,zbid,jj,jname,guihuantime,djtime,dengjiren,remark) (6)借入表中的逻辑关系: Jr(jdid#,zbid,jj,jname,jiejintime,djtime,denjiren,remark) 4数据库设计 数据库管理系统选用 SQL Server 2005,根据财务管理系统的功能及逻辑关系模式分析, 建立相关联的表和视图,每张表通过外键连接,建立联系,还有增、删、改、更新表的存 储过程,以便能方便的调用数据库中的数据,满足客户的需求。 4.1 数据库和各表的创建 4.1.1 数据表结构设计 1)jc(借出)表结构设计 列名数据类型长度及精度是否允许空值说明 JdidIntx与 zbid 联合主键,外键,参照 jr 表 ZbidIntX与 jdid 联合主键,外键,参照 jr 表、tzb 表、zc 表 JjIntNull JnameVarchar20Null GuihuantimeDatetimeNull DjtimedatetimeNull DenjirenVarchar10Null RemarkVarchar50Null 2)jr(借入)表结构设计 列名数据类 型 长度及精 度 是否允许空值说明 JdidIntX与 zbid 联合主键,外键,参照 jc 表 ZbidIntX与 jdid 联合主键,外键,参照 jc 表、 tzb 表、zc 表 JjIntNull JnameVarchar20Null JiejintimeDatetimeNull djtimedatetimeNull DenjirenVarchar10Null RemarkVarchar50XNull 3)users(用户)表结构设计 列名数据类型长度及精度是否允许空值说明 uidIntX主键 unameVarchar10Null pwdVarchar20Null adminbitNull 4)zb(账簿) 表结构设计 列名数据类 型 长度及精 度 是否允许空 值 说明 zid IntX与 uid 联合主键,外键,参照 jc 表,jr 表, tzb 表 uidIntX与 zid 联合主键,外键,参照 user 表 zbnameVarchar20Null ztypevarchar20Null zbintrovarchar20Null 5)tzb(投资)表结构设计 列名数据类 型 长度及精 度 是否允许 空值 说明 zdidIntx与 zbid 联合主键,外键,参照 jr 表, zc 表 ZbidIntX与 zdid 联合主键,外键,参照 zc 表 yhzIntNull zctimedatetime20Null ynamevarcharNull czmintNull lllvintintNull dipVarchar20Null tzrvarchar20Null 6)zc(支出)表结构设计 列名数据类 型 长度及精 度 是否允许 空值 说明 zdidIntx与 zbid 联合主键,外键,参照 tzb 表 ZbidIntX与 zdid 联合主键,外键,参照 jr 表, tzb 表,jc 表 SjIntNull SztypeVarchar20Null ZjIntNull ZjtypeVarchar20Null DjpVarchar20Null DitimeVarchar50Null Djrevarchar50Null LostIntNull 4.1.2 创建数据表 SQL 脚本 CREATE TABLE users ( uid int IDENTITY(1,1) primary key, uname varchar(10) NOT NULL, pwd varchar(20) NOT NULL, admi bit NULL ) go CREATE TABLE zb ( zid int IDENTITY(1,1) primary key, uid int NULL, zbname varchar(20) NULL, ztype varchar(20) NULL, zbintro varchar(20) NULL ) go CREATE TABLE tzb ( zdid int IDENTITY(1,1) primary key, zbid int NULL, yhz int NULL, zctime datetime NULL, yname varchar(20) NULL, czm int NULL, lllv int NULL, djp varchar(20) NULL, tzr varchar(20) NULL ) go CREATE TABLE zc ( zdid int IDENTITY(1,1) primary key, zbid int NOT NULL, sj int NULL, sztype varchar(20) NULL, zj int NULL, zjtype varchar(20) NULL, djp varchar(20) NULL, djre varchar(50) NULL, lost int NULL ) Go CREATE TABLE jc ( jdid int IDENTITY(1,1) primary key, zbid int NULL, jj int NULL, jname varchar(20) NULL, guihuantime datetime NULL, dengjiren varchar(10) NULL, remark varchar(50) NULL ) Go CREATE TABLE jr ( Jdid int IDENTITY(1,1) primary key, zbid int NULL, jj int NULL, jname varchar(20) NULL, jiejintime datetime NULL, dengjiren varchar(10) NULL, remark varchar(50) NULL ) Go 4.1.3 数据表快照 上述脚本形成的表在 SQL Server 2005,如下图所示: 4-1-3-01 借出表快照 4-1-3-02 用户表快照 4-1-3-03 投资表快照 4-1-3-04 帐薄表快照 4-1-3-05 借出表快照 4-1-3-06 借入表快照 各表间的关系如图: 4.2 系统功能的实现: 如果想要实现财务系统里面的功能就必须建一些存储过程,这些存储过程的代码是实现 如下: 1 首先在 users(用户表)表中的存储过程: (1).增加用户的存储过程: Create proc usersadd ( uname varchar, pwd varchar, admin varchar ) As Insert into users values(uname,pwd,admin) (2)查询用户的存储过程: Create proc userss As Select * from users (3)验证用户密码的存储过程: Create proc selectj (name varchar, pwd varchar ) as select * from users where uname=uname and pwd=pwd (4)删除用户表中的存储过程; Create proc usersd ( uid int ) Delete users where uid=uid (4)更新用户表中的存储过程: Create proc usersup (uid uid , uname varchar, pwd varchar, admin varhcar ) Update usersup set uname=uname ,pwd=pwd,admin=admin where uid =uid 2 在 zb(账薄表)表中的存储过程: (1) 查询账薄表中的存储过程: Create proc ads As Select * from zb (2) 根据条件选择查询的账薄表中的 sql 语句: select * from zb where tj like %zhi% (3)在账薄表中插入新的数据: Create proc inzb ( uid int, zbname varchar, ztype varchar, zbintro varchar ) As Insert into zh values(uid, zbname, ztype, zbintro) (4)在账薄表中删除旧的数据: Create poc zbde ( uid int ) Delete zb where uid=uid (5)更新账薄表中的数据: Create proc zbup ( zbid int, uid int , zbname varchar, ztype varchar, zbintro varchar ) Update zb set uid=uid,zbname=zbname,ztype=ztype,zbintro=zbintro where zbid=zbid 3 在 zc(日常消费表)表中的存储过程: (1) 在日常消费表中插入数据: Create proc zcin ( zbid int, sj int, sztype varchar, zj int, zjtype varchar, djp varhcar, ditime varcahr, djre varchar lost int ) Insert into zc values(zbid, sj, sztype, zj, zjtype, djp, ditime, djre, lost) (2)日常消费表的的查询: Create proc zcsl As Select * from zc (3)日常消费表的条件查询: Select * from where tj like %zhi% (4)日常消费表的删除: Create proc zcde ( zdid int ) As Delete zc where zdid=zdid (5)日常消费表的更新数据: Create proc zcupdate ( Zdid int, zbid int , sj int, sztype varchar, zj int, zjtype varchar, djp varhcar, ditime varchar, djre varchar, lost int ) Update zc set zbizbid ,sj=sj, sztype=sztype, zj=zj, zjtype=zjtype, djp=djp, ditime=ditime, djre=djre, lost=lost where zdid=zdid 4 在 tzb(银行储存表)表中的存储过程: (1) 银行存储表中的查询: Create proc tzbsel As Select * from tzb; (2) 银行存储表中的条件查询: Select * from tzb where tj like %zhi% (3) 银行存储表中的插入数据: Create proc tzbin ( Zbid, Yhz, Zctime, Yname, Czm, Lllv, Djp, tzr ) Insert into tzb values(Zbid,Yhz,Zctime,Yname,Czm,Lllv,Djp,tzr) (4)银行存储表中删除数据: Create proc tzbd ( zdid int ) Delete tzb where zdid=zdid (5).银行存储表中的更新数据: Create proc tzbupdate ( Zdid, Zbid, Yhz, Zctime, Yname, Czm, Lllv, Djp, tzr ) Update tzb set Zbid=Zdid, Yhz=Yhz, Zctime=Zctime, Yname =Yname,Czm=Czm, Lllv=Lllv, Djp=Djp, tzr=tzr 6.在 jc(借出表)表中的存储过程: (1)增加支出的存储过程: create proc addjc ( jdid int, zbid int , jj int , jname varchar(20), guihuantime datetime, djtime dateetime, denjiren varchar(10), remark varchar(50) ) As Insert into jc vakues(jdid,zbid,jj,jname,guihuantime,djtime,dengjiren,remark) (2) 删除借出记录的存储过程 create proc deletejc jdid int As Delete from jc where jdid=jdid (3) 查询借出记录 create proc selectjc jdid int, As Select * from jc where jdid=jdid (4)更新借出记录 create proc updatetjc ( jdid int, zbid int , jj int , jname varchar(20), guihuantime datetime, djtime dateetime, denjiren varchar(10), remark varchar(50) ) As Update jc set zbid=zbid, jj=jj, jname=jname, guihuantime=guihuantime, djtime=djtime, denjiren=denjiren, remark=remark where jdid=jdid, 5 在 jr(借入表)表中的存储过程: (1).增加借入记录的存储过程 Create proc addjr ( jdid int, zbid int, jj int, jname varchar(20), jiejintime datetime, djtime datetime, denjiren varchar(10), remark varchar(50) ) Insert into jr values(jdid,zbid,jj,jname,jiejintime,djtime,denjiren,remark) (2).删除借入记录的存储过程 Create proc deletejr jdid int As Delete from jr where jdid=jdid (3).更新借入记录的存储过程 Create proc updatejr ( jdid int, zbid int, jj int, jname varchar(20), jiejintime datetime, djtime datetime, denjiren varchar(10), remark varchar(50) ) Update jr set Zbid=zbid, Jj=jj, Jname=jname, Jiejintime=jiejintime, Djtime=djtime, Denjiren=denjiren, Remark=remark Where jdid=jdid (4).查询借入记录的存储过程 Create proc selectjr jdid int As Select * from jr where jdid=jdid 5.设计总结 这次的数据库课程设计可以说是为我们这一学期的数据库学习的一次练兵。看起来 很

温馨提示

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

评论

0/150

提交评论