音响店DVD零售出租管理系统.docx
- 文档编号:4811672
- 上传时间:2022-12-09
- 格式:DOCX
- 页数:21
- 大小:97.88KB
音响店DVD零售出租管理系统.docx
《音响店DVD零售出租管理系统.docx》由会员分享,可在线阅读,更多相关《音响店DVD零售出租管理系统.docx(21页珍藏版)》请在冰豆网上搜索。
音响店DVD零售出租管理系统
数据库原理及应用课程设计
设计报告
@:
音响店DVD零售\出租管理系统
号:
131007140
学生姓名:
2015-01-05
指导教师:
提交时间:
第1章需求分析1
1.1需求调査1
1.2系统功能分析1
第2章概念结构设计2
2.1局部E—R图:
2
2.2全局E-R图4
第3章逻辑结构设计5
3.1E-R图向关系模式转换5
3.2建立关系模式5
3.3关系模式逻辑结构定义6
第4章数据库物理结构设计9
4.1存取方法设计9
4.2存储结构设计9
4.3物理设计9
第5章数据库完整性设计12
5.1主键12
5.2参照完整性设计13
5.3Check约束13
5.4触发器设计13
第6章数据库视图设计15
第7章数据库存储过程设计16
总结16
参考文献:
17
第1章需求分析
1.1需求调査
通过对各个用户的调査,该DVD零售租赁管理系统有如下需求:
1)系统管理:
实现系统管理人员对系统的管理,包括添加删除用户,更改密码,数据备份,数据还原,数据淸除等功能。
2)数据管理:
实现管理人员对系统的管理,包括DVD的入库、借还、零售等功能。
3)基本信息:
实现显示客户和DVD的基本信息(包括客户信息及其租赁或购买的DVD信息,DVD的类型、库存等基本信息)。
4)查询:
査询客户租赁或购买状况,某段时间内各DVD的零售、借还数量,已租赁但未还的DVD信息及客户信息,现有的DVD的库存情况等。
5)帮助系统:
帮助系统为用户指明方向。
1.2系统功能分析
DVD零售租赁管瑾系统
图1系统功能图
1)会员管理:
用于增加会员,删除会员,会员基本信息的修改,会员缴费、退押金、退租金等。
2)业务操作:
实现DVD的岀租、返还、销售、退售、退租、添租功能。
3)DVD管理:
新添光盘入库,原有光盘进货,DVD光盘信息修改,光盘注销。
4)査询:
已岀租、销售DVD查询,即将缺货的DVD查询,某一DVD的出租、销售情
况査询,会员租赁或购买的情况查询。
5)系统设置:
操作员及其权限的设世,影片类型、会员类型的设置,非会员、会员的彫片收费标准。
6)账务管理:
添加、修改、删除账户,账户收支,所有资金及其明细等。
概念结构设
2.1局部E-R图:
图3会员卡信息图
图4租赁信息图
图6DVD归还
DY1)育称
DVD
(DVD编岂丿
DVD信息
图7
被租次数
土演
年份
类世
进货商
库存、卫滋祐Gl伟价耳二)
现货
图8DVD退购
2.2全局E-R图
DVD入牢佑息去
PKJK1
DV1》编吁
DVD名祢入庠「1期入障敘虽
PK
D\D泊号
INI)"称导演主演类塑
进货商现货
fit估价格出會价格
川八信息衣
PK
用户俺号
用户类型公员k号姓名rui
越糸方式现住址
;
你购买历史祖後厉史卿买
会员卡伎息渋
l*K
会届*号
IK1
用户编号紅名会员英克
J内余額
JKcim货登记口期
DVD担妁佑息农
PK
FK1卜R2
DVD编号D\D名宓退购用户絢兮遇购日屈退购数圮应退金蔽有施坏
OVD咎您佑鬼表
PK
FK1
IK2
DVD冷号pvdEH:
勁买用八編号出ftRWl出俗数議应付会籾
DVDfS货仃总太
PK
惘饼
1K1
1K2
1八1朋弓DVD名稼rettffl户第好叵付押金wttn期到期时间
DVO归还倍也老
PK
归还单号
FK1
FK2
DVDtft号MD名称口还用门烷号口还II期途期大数应讨金额有无损坏&退押金
第3章逻辑结构设计
3.1E-R图向关系模式转换
逻辑结构是独立于任何一种数据模型的,在实际应用中,一般所用的数据库环境已经给泄(如SQLServer或Oraccl或MySql)。
由于目前使用的数据库基本上都是关系数据库,因此首先需要将E-R图转换为关系模型,然后根据具体DBMS的特点和限制转换为特定的DBMS支持下的数据模型,最后进行优化系模式转换
3.2建立关系模式
DVD信息(DVD编号,DVD名称,导演,主演,类型,年份,进货商,现货,库存,租赁价格,出售价格,被租次数)
用户信息(用户编号,用户类型,会员卡号,姓名,性别,联系方式,现住址,当前租赁,当前购买,历史租赁,历史购买)
会员卡信息(会员卡号,用户编号,会员类型,状态,卡内余额,累计岀租,登记日期)DVD租赁(租赁单号,DVD编号,DVD划称,租赁用户编号,应付押金,租赁日期,到期时间)
DVD归还(归还单号,DVD编号,DVD划称,归还用户编号,归还日期,逾期天数,应付金额,损坏情况,应退押金)
DVD零售(零售单号,DVD编号,DVD爼称,购买用戸编号,出售日期,出售数量,应付金额)
DVD退购(退购单号,DVD编号,DVD划称,退购用户编号,退购日期,退购数量,有无损坏,应退金额)
DVD入库(DVD编号,DVD名称,入库日期,入库数量)
3.3关系模式逻辑结构定义
1.用户详细信息
字段名
数据类型
长度
约束
用户编号
varchar
12
主键
用户类型
varchar
10
会员、非会员
会员卡号
varchar
20
可为空
姓名
varchar
10
不为空
性别
char
2
男或女
联系方式
varchar
20
不为空
现住址
varchar
100
不为空
当前租赁
int
可为空
当前购买
int
可为空
历史租赁
int
可为空
历史购买
int
可为空
2.会员卡详细信息
字段名
数据类型
长度
约束
会员卡号
varchar
20
主键
用户编号
varchar
12
外键
姓名
varchar
10
不为空
会员类型
varchar
20
普通、白金会员等
状态
varchar
10
激活、未激活
卡内余额
float
可为空
累计岀租
int
可为空
登记日期
date
不为空
3・DVD详细信息
字段名
数据类型
长度
约束
DVD编号
varchar
10
主键
DVD名称
varchar
20
不为空
导演
varchar
10
不为空
主演
varchar
20
不为空
类型
varchar
10
可为空
年份
varchar
□
不为空
进货商
varchar
20
不为空
现货
int
不小于0
库存
int
不小于0
租赁价格
float
不为空
出售价格
float
不为空
被租次数
int
可为空
4.DVD入库信息
字段名
数据类型
长度
约束
DVD编号
varchar
10
主键、外键
DVD洛称
varchar
20
不为空
入库日期
date
不为空
入库数量
int
不为空
5.DVD租赁信息
字段名
数据类型
长度
约束
租赁单号
varchar
12
主键
DVD编号
varchar
10
外键
DVD名称
varchar
20
不为空
租赁用户编号
varchar
12
外键
应付押金
float
不为空
租赁日期
date
不为空
到期时间
date
不为空
6.DVD归还信息
第4章数据库物理结构设计
4.1存取方法设计
数据库系统是多用户共享的系统,对同一个关系要建立多条存储路径才能满足多用户的多种应用要求。
对于DVD零售出租管理系统来说,为了提高某些属性(如:
DVD的现货、库存、岀租、零售记录等)的查询速度,可以选择聚簇存取的方法,即把这些属性上具有相同值的元组集中放在连续的物理块上。
这样在查询某一类DVD或同一主演、导演出租零售数量时就会大大提高查询速度。
因此,该系统中选择聚簇存取方法。
4.2存储结构设计
DVD零售出租管理系统是一个复杂的计算机网络信息系统,采用基于客户端/服务器(C/S)应用体系结构来建设DVD零售岀租管理系统。
数据库管理系统采用Microsoft公司推出的SQLServer2000或以上版本,并用SQL进行数据库的建立和数据库中数据的维护和查询。
4.3物理设计
实现该设计的环境为WindowsXPProfessional+MSSQLServer2008或以上版本。
1、建立数据库
createdatabase音响店DVD零售出租管理系统数据库
on
(name音响店DVD零售出租管理系统数据文件,,
filename=1E:
\SJKKCSJ\音响店DVD零售出租管理系统数据文件.md「,
size=15MBZ
maxsize=50MB,
filegrowth=5%
)
logon
(name音响店DVD零售出租管理系统日志文件,,
filename=fE:
\SJKKCSJ\音响店DVD零售出租管理系统日志文件.Idff,size=2MB,maxsize=5MB,filegrowt^h=1MB
)
2、建立用户信息表
createtable川八信息•农
(
丿tj丿r编varchar(12)notnullprimarykey,
用户类型varchar(10)notnullcheck(MJ/1类型in(1会员八非会员■)),
当前租赁int,
当前购买int,
历史租赁int,
历史购买int
)
3、建立会员卡信息表
createtable会员卡信息衣
(
会员卡Jvarchar(20)notnullprimarykey,
丿t]丿'"编打varchar(12)notnull,
姓名varchar(10)notnullz
会员类型varchar(20)notnullcheck(会员类型£n(1普通会员…匚I金会员,,黄金会员八钻石会员,)),
状态varchar(10)notnullcheck(状态in('激沾''未激活'))#
卡内余额float,
累计租赁int,
登记LI期datenotnullz
foreignkey(用户编号)references用户信息农(用户编号)
)
4、建立DVD信息表
createtableDVD信思衣
(
DVD编廿varchar(10)primarykey,
DVD名称varchar(20)notnull,
导X"varchar(10)notnullz
varchar(20)notnull,
类型varchar(10),
•份varchar(5)notnull
进货冏varchar(20)notnull,
现货intcheck(现货>=0)z
存intcheck(库存>=0),
租赁价格floatnotnull^
出售价格floatnotnullr
被租次数int
5、建立DVD租赁信息表createtableDVD租贷倚•息衣
租赁日期datenotnullr
到期时间datenotnullz
foreignkey(DVD^iij'})referencesDVD信丿』、衣(DVD编,
foreignkey(fllf 6、建立DVD归还信息表 createtableDVD归还信甩、衣 ( 归还单匕varchar(12)notnullprimarykey, DVD编号varchar(10)notnullz DVDpi称varchar(20)notnullz 归还用户编号varchar(12)notnull, 归还日期datenotnull, 適期天数int, 应付金额floatnotnullr 损坏状况char (2)notnullcheck(损坏状况in(,有八无■)), 应退押金floatnotnullz foreignkey(DVD编号)referencesDVD信总衣(DVD编'}), foreignkey(归还用户编号)references用户信息表(用户编号)) 7、建立DVD零售信息表 createtableDVD零售信息农 ( 零售单varchar(12)notnullprimarykey, DVD编varchar(10)notnull DVDvarchar(20)notnullz 犯jy: 丿H丿r编varchar(12)notnull, 出售日期datenotnullf 出售数量int, 应付金额floatnotnull, foreignkey(DVD^iij'J')referencesDVD信丿』、衣(DVD编, foreignkey(购买用户编号)references用户信息表(用户编号) 8、建立DVD退购信息表createtableDVD退购倚AJ、衣 退购数呈intnotnullz 有无扌ifchar (2)notnullcheck(有无损坏in(•有八无,)),应退金额floatnotnull, foreignkey(DVD编号)referencesDVD信息衣(DVD编号•), foreignkey(退购用户编1J)references用户信息表(用户编号) 9、建立DVD入库信息表 createtablmDVD入库信息衣 ( DVD编号varchar(10)notnullprimarykey, DVD名称varchar(20)notnullr入库日期date;notnull,入库数虽intnotnull,foreignkey(DVD^preferencesDVD信思衣(DVD编号) ) 第5章数据库完整性设计 5.1主键 表名 主键 DVD信息表 (DVD编号) 用户信息表 (用户编号) 会员卡信息表 (会员K号) DVD租赁信息表 (租赁编号) DVD归还信息表 (归还编号) DVD零售信息表 (零售编号) DVD退购信息表 (退购编号) DVD入库信息表 (DVD编号) 5.2参照完整性设计 表名 外键 参照 DVD租赁表 (DVD编号,租赁用户编号) DVD信息表.DVD编号用户信息表.用户编号 DVD归还表 (DVD编号,归还用户编号) DVD信息表.DVD编号用户信息表.用户编号 DVD零售表 (DVD编号,购买用户编号) DVD信息表.DVD编号用户信息表•用户编号 DVD退购表 (DVD编号,退购用户编号) VD信息表.DVD编号用户信息表•用户编号 DVD入库表 (DVD编号) DVD信息表.DVD编号 5.3Check约束 1、会员卡信息表中将会员类型、状态进行Check约束: check(会员类型inC普通会员’’白金会员'’黄金会员’’钻石会员'))check(状态in('激活未激活')) 2、用户信息表中用户类型、性别进行check约朿: check(用户类型in('会员’’非会员')),check(性别in('男'‘女')) 3、DVD归还表中将损坏状况进行check约束: check(损坏状况in('有'‘无')) 4、DVD退购表中将有无损坏进行check约束: check(有无损坏in('有'‘无')) 5、DVD信息表中对现货、库存进行check约朿: check(现货〉=0),check(库存〉二0) 5.4触发器设计 1.实现岀租时自动修改DVD现货及客户的当前租赁数量 createtrigger_rentonDVD租赁信息衣--租赁触发器forinsert as begin updateDVD信息表set现货=现货-1 fromDVDf言AJ•农.inserted vzhereDVD信,息农・DVD编*/=inserted・DVD编 update用户信息表set当前租赁=当前租赁+1 from用户信息农,in*工sd where用户信息农•用户编*}=inserted.租赁用户编号 end 2.实现归还时自动修改DVD现货及客户的当前租赁数量和历史租赁数量 createtrigger^returnonDVD归还f言丿』、<2一一还触发2器 forinsert as begin updateDVD信息农set现货=现货+1 fromDVD信息农,inserted vzhereDVD彳言,息衣・DVD编^=inserted・DVD编号. update用户信息农set当前租赁=当前租赁-1 from用户信息农,insmrgd where用户信息农.用户编^=inserted.归还用户编号 update用户信息衣set历史租赁=历史租赁+1 frominserted where/I]P信息表.用户编号=inserted.归还用户编号 updateDVDl/.l还信息农setDVD编号=DVD租赁信息衣・DVD编号,DVD名称二DVD租赁信息农・DVD名称, 归还用户编号二DVD租赁信息农.租赁用户编号 fromDVDflI赁信息农,DVD归还信息衣,inserted whereDVD租赁信息表•租赁单^—inserted.归还单号end 3.实现入库时自动修改DVD库存 createtrigger_buyonDVD入库信息农一入库触发器 forinsert as updateDVD信息後set库存=库存+inserted.入库数量 fromDVD信AJ・农,inserted vzhereDVDf言,息衣・DVD编*/=inserted・DVD编号• 4.实现零售时自动修改DVD库存及用户当前购买和历史购买 createtrigger_saleonDVD零售信息裟一零售触发器 forinsert as begin update用户信息衣set历史购买二当前购买 from用户信息农,insErtmd where用户信息农.用户编^=inserted.购买用户编号 update用户信息衣set当前购买二当前购买+inserted.! li售数量 from用八信息-込insm工gd where用户信息农.用户编号=inserted.购买用户编号 updateDVD信息表set库存=库存-inserted,illW数量 fromDVD(言息衣,inser vzhereDVD彳言,息・衣・DVD编*/=inserted・DVD编号•end 5.实现退购时自动修改DVD库存及用戸当前购买 createtrigger_offonDVD退购信息农_零售触发器forinsert as begin update用户信息衣smt当前购买二当前购买-inserted.退购数彊 frominserted where用户信息农•用户编*}=inserted.退购用户编号 updateDVD信息衣set库存=库存^inserted.退购数量 fromDVD信息衣,inserted vzhereDVD(BM^<・DVD编*}=inserted・DVD编号’ updateDVD退购信息衣setDVD编号二DVD零售信息衣・DVD编号,DVD名称二DVD冬售信息.DVD名称, 退购用户编号=DVD零售信息农.购买用户编号 fromDVD冬售信息衣,DVD退购信息衣,inserted vzhereDVD零售信息农•零售单J/J=£nserted.退购单"兮 end 第6章数据库视图设计 1・创建视图查询DVD的现货、库存 createviev;number as selectDVD编号,DVD名称,现货八库存 fromDVDZ言息衣 2.创建视图查询用户的租赁,购买状况createviewuser_number as select当前购买”历史购买,前租熱历史租赁 from用户信息衣 3.创建视图查看会员情况 createviewvip as select会员卡信息衣.会员卡号,会员卡信息农.姓名,性别,会员类型,状态,联系方式,现住址,卡内余额,登记日期 from会员卡信息农“用户信息农 where会员卡信息衣.会员卡号=用户信息农.会员卡号 4.创建视图查看影片是否缺货 createviewout_of_stookas selectDVD名称,导演,主演,类型 fromDVD信息农 whereDVD信息&..库存=0 第7章数据库存储过程设计 创建存储过程统计某段时间内各DVD的销售、借还数量 createproceduretongji@begintimedate,Qendtimedate,@tvpechar(6)as declareQleixingchar(6) set@leixing=@type begin if@lei: -: ing='岑售* selectQbegintimeas起始日期z@endtimeas截至日期,DVD编号,SUM(出售数量)as销售量 fromDVD冬售信思衣 vzhereHiPrLIJVJ>=@begintimeandillW11^<=@endtime groupbyDVD编号 elseif@lei: -: ing=11 selectQbegintimeas[1Wjz@endtimeas截至11期,DVD编号,count(DVD编号) as出租量 fromDVDffl.赁信息农 vzhere租赁LI期>=@begintimeand租赁I」期<=@endtime groupbyDVD编号 elseif二'归还■ selectQbegintimeas起始II期,匚immas截至I1期,DVD编号,count(DVD緡号)a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 音响 DVD 零售 出租 管理 系统