数据库设计
- 博客分类:
- 技术杂绘
数据库设计
2011年01月12日
1.1 项目目的
课程设计的目的是为了巩固复习曾经学习过的数据库课程,并通过实际的实验对所学的知识加以巩固以达到模拟现实生活中实际用例的目的,并增加同学们适应以后工作中的团队工作中的合作互助的团队精神。 1.2 系统定义
1.2.1初始数据库大小
1) 大约有20 000盘录像,400 000盘供出租的录像分布在超过100个分公司中。每个分公司平均有4000盘录像,最多有10 000盘供出租。
2) 大约有2000名员工工作在各个分公司。每个分公司平均有15名员工,最多有25名。
3) 大约有100 000名会员在各个分公司注册。每个分公司平均有1000名会员,最多有1500名会员。
4) 各个分公司共有400 000盘录像拷贝。平均每个分公司有4000到10 000盘录像 1.2.2数据库增长速度
1) 每月大约有100部新片,每盘录像有20份拷贝加到数据库中。
2) 一旦某盘录像的一份拷贝不能再租借出去(如画面质量差、丢失、被偷),则相应的记录从数据库中删除。
3) 每月会有20名员工加入或者离开。离开公司一年的员工记录从数据库中删除,每月大约删除20条员工记录。 1.2.3网络和共享访问要求
1) 所有分公司都必须安全地和位于公司总部的中央数据库实现网络互连。
2) 系统必须能够支持每个分公司的至少三名成员同时访问。 1.2.4安全性
1) 数据库必须有口令保护。
2) 每个员工应该分配一个到特定用户视图的数据库访问权限,主要是主管、经理、助理和采购员。
3) 员工只能在适合他们完成工作的需要窗口中看到需要的数据。 1.3 开发环境
SQL Server 2005 和Visual Studio 2008 开发环境。 二、 需求分析
2.1 问题陈述
该系统最终用于影碟出租公司,业务范围需遍布大范围区域,可以及时并很好地把各地分公司的业务数据汇总于最高管理层面前,使得跨区域的数据共享变得更便利,并为业务分析提供了很好的参考数据,减少了收集业务分析所需收据的经费开销,根据业务范围的限制,本系统暂时定义的边界偏小,并不能很好地涵盖公司的管理方面的各种业务,现况只涉及内部人员管理和租借业务的管理。另外还包含了客户的信息管理。 图表1系统边界定义
2.2 数据需求
StayHome的一个分公司的数据包括分公司地址(由街道、城市、省份和邮政编码组成),电话号码(最多3行)。每个分公司有个名称,在全公司是唯一的。
StayHome的每个分公司都有若干名员工,包括一个经理,一到多名主管、助理、采购员和一些其他员工。经理负责分公司的日常运营,主管负责管理助理和员工,助理帮助主管分担管理员工的任务,员工数据主要包括姓名、身份证号、职务、薪水等。每位员工有员工号码,在全公司是唯一的。
每个分公司有录像库存。录像数据包括目录号、录像号、片名、种类、日租费用、购买价格、状态、主要演员名字(以及扮演的角色)和导演。目录号唯一地表示一盘录像。通常一个分公司有一盘录像的多份拷贝,每个拷贝由录像号唯一地表示。录像的种类有动作、成人、儿童、恐怖、科幻。状态指出一盘录像的某份拷贝是否可以出租。
在从公司租借录像之前,客户必须首先注册成为StayHome当地分公司的一名会员。会员信息包括姓名、身份证号、地址、联系方式和注册日期。每个会员有会员号,会员号对所有分公司都是唯一的,而且可以在多个分公司使用同一会员注册号。负责注册该会员的员工的姓名也要加上。
注册后,会员可以租借录像。租借业务数据包括租借号、会员的全名、会员号、录像号、片名、每日费用、租出的提起和归还的日期。 2.3 事务需求
2.3.1 数据录入
a) 录入一个新分公司的详细情况。
b) 录入某分公司的新员工的详细情况。
c) 录入新入库的录像的情况。
d) 录入给定分公司的某部录像拷贝的情况。
e) 录入某分公司新会员的情况。
f) 录入租借协议的情况。 2.3.2 数据更新和删除
a) 更新/删除分公司信息。
b) 更新/删除某分公司的员工信息。
c) 更新/删除给定录像的信息。
d) 更新/删除给定录像的某分拷贝的信息。
e) 更新/删除给定会员的信息。
f) 更新/删除某会员租借某部录像的信息。 2.3.3 数据查询
a) 列出给定城市的分公司情况。
b) 按照员工的名字顺序列出指定分公司的员工名称、职位、薪水。
c) 按照分公司号顺序列出每个分公司的经理名称。
d) 分类列出某分公司的录像名称、种类和可租借情况。
e) 列出某个会员租借的全部录像的详细情况。
f) 列出某个分公司指定录像的拷贝情况。
g) 列出指定种类的所有录像名称,按片名排序。
h) 列出每个分公司每种录像的数量,按照分公司号排序。 2.3.4 用户管理
a) 普通员工注册,获取一个用户名,登陆系统开展工作
b) 系统管理员可以管理(更新、删除、解锁、锁定、密码恢复)总经理等各级员工的用户。
c) 总经理可以管理(更新、删除、解锁、锁定、密码恢复)主管、采购员和助理的用户。
d) 主管可以管理(更新、删除、解锁、锁定、密码恢复)助理和普通员工注册的用户。
e) 助理管理(更新、删除、解锁、锁定、密码恢复)员工注册的用户。
有一个1:*递归关系:员工(主管、助理)管理员工(助理、普通员工) ,这时父实体和子实体都是Staff。根据上面给出的规则,应把Staff父实体的主键拷贝到Staff子表中来表达Supervises关系,这时应该建立这个列的第二个拷贝作为外键。这个列的拷贝被重新命名为supervisorStaffNo,由此来更好表达它的意思。 图表3 1:*递归关系(员工管理员工) 员工(员工号,姓名,职位,薪水,公司号,监督员工号)
主键:员工号
外键 公司号 关联 公司表(公司号)
外键 监督员工号 关联 员工表(员工号) 员工号用来表示"员工管理员工"关系(监督员工号) 公司号来自"公司拥有员工"关系 在这种情况下,关系中的可选参与的实体被设计为父实体,关系中的强制参与的实体被设计为子实体。即父实体的主键拷贝被放置在描述子实体的表中。
在只有一边实体强制参与的1:1关系中有一个或多个属性的情形中,这些属性也应该随其主键加入到子表中。例如"经理管理公司"关系有一个叫做"上任日期"的属性,则这个属性将随着"员工号"(重命名为"经理号")的拷贝加入到公司表中,成为该表中的一列。 图表4 "公司拥有员工(包括经理)"和"经理管理员工"关系 图表5关系之间的关联
公司(公司号、名称、省份、城市、街道信息、邮政编码、经理号)
员工(员工号、姓名、性别、职位、薪水、公司号、监督员工号) 图表6基本表 Branch BranchNo、Province、City、Street、ZipCode、MgrStaffNo、Name (分公司) (分公司号、省份、城市、街道、邮编、经理号、名称) Telephone TelNo、TelNumeber、BranchNo (联系电话) (电话号、电话号码、公司号) Staff StaffNo、Name、Sex、CardID、Email、MobilePhone、Position、Salary、BranchID (员工) (员工号、姓名、性别、身份证号、邮箱、电话号码、职位、工资、分公司号) Member MemberNo、Name、CardId、Address、Phone、Email (会员) (会员号、姓名、身份证号、地址、联系电话、邮箱) Registration BranchNo、MemberNo、StaffNo、DateJoined (注册) (公司号、会员号、员工号、注册日期) Video CatalogNo、Title、Category、DailyRental、Price、DirectorNo (录像) (类别号、标题、类别、日租、价格、导演号) VedioStored StoredNo、CatalogNo、Quantity、BranchNo (录像库存) (库存号、录像号、数量、公司号) VideoForRent VideoNo、Available、StordNo、ISBN、Remark (出租录像) (影碟号、可否出租、库存号、ISBN检索号、备注) Director DirectorId、DirectorName、Remark (导演) (导演号、导演姓名、备注) Actor ActorId、ActorName (演员) (演员号、演员姓名) Role RoleNo、ActorNo、DirectorNo、Character (角色) (角色号、演员号、导演号、角色) RentalAgreement RentalNo、DateOut、DateReturn、MemberNo、VideoNo、IsFinish (出租协议) (协议号、出租日期、归还日期、会员号、影碟号、是否完成) UserMapping Guid、UserName、Entity、EntityID、Remark (用户表) (唯一标识、用户名、实体、实体ID、备注) PropertyMapping PropertyName、PropertyValue、PropertyMeaning、Remark (映射表) (映射名称、映射值、映射意义、备注) [1]1 数据库系统概论 王珊、萨师煊 编著 高等教育出版社 2、深度探索关系数据库 C.J.Date 编著 电子工业出版社
3、UML用户指南 Grady Booch、James Rumbaugh、Ivar Jacobson编著 电子工业出版社
发表评论
-
Using CoCreateObjectDotNet to Access and Use .net Assemblies in InstallScript
2012-01-20 02:48 1177Using CoCreateObjectDotNet to A ... -
CPPUNIT使用说明
2012-01-20 02:48 1328CPPUNIT使用说明 2010年08月04日 CPPU ... -
安装单服务器版的Team Foundation Server
2012-01-20 02:48 834安装单服务器版的Team Fo ... -
VS2008 AddIn 开发 WorkspaceAddIn 实例(支持VS2010)
2012-01-20 02:48 878VS2008 AddIn 开发 WorkspaceAddIn ... -
神马都不是浮云
2012-01-19 10:41 640神马都不是浮云 2012年01月17日 心理准备每天都应 ... -
曾经神马梦想都是浮云!学校一切我伤不起你们,你们如何伤得起我?
2012-01-19 10:41 608曾经神马梦想都是浮云! ... -
神马都是浮云!
2012-01-19 10:41 555神马都是浮云! 2012年01月13日 兔年的201 ... -
珍惜自己
2012-01-19 10:41 595珍惜自己 4小时前 原始 -
完成端口的一些问题
2012-01-17 03:11 596完成端口的一些问题 2010年11月23日 测试完成端口 ... -
2011-9-13
2012-01-17 03:11 4762011-9-13 2011年09月13日 JavaSE ... -
如何保护自己的共享软件
2012-01-17 03:11 574如何保护自己的共享软 ... -
【转】C/C++ 面试题集锦
2012-01-17 03:11 1049【转】C/C++ 面试题集锦 2011年07月10日 1 ... -
c 试题
2012-01-17 03:11 1800c 试题 2010年06月02日 .1 若a、b、c、d ... -
团队口号
2012-01-16 01:45 1181团队口号 2010年01月06日 查看文章 口号大 ... -
激励口号
2012-01-16 01:45 610激励口号 2011年02月16日 ... -
行业的激励口号
2012-01-16 01:45 752行业的激励口号 2010年0 ... -
激励口号集锦
2012-01-16 01:44 674激励口号集锦 2009年07月18日 激励口号集锦增员类 ... -
团队精神训练团队口号精神口号团队心声营销口号知道口碑营销
2012-01-16 01:44 1084团队精神训练团队口号 ... -
ASP创建xml
2012-01-11 01:33 511ASP创建xml 2011年09月01日 Dim xml ... -
从实际出发
2012-01-11 01:33 563从实际出发 2011年09月01日 记得前几天看 ...
相关推荐
网吧管理系统数据库设计和相关文档网吧管理系统数据库设计和相关文档网吧管理系统数据库设计和相关文档网吧管理系统数据库设计和相关文档以及相关报表网吧管理系统数据库设计和相关文档网吧管理系统数据库设计和相关...
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据。 1 数据库设计的基本步骤: 2 概念结构设计 2.1 E-R模型基本符号 2.2 初步E-R图设计 2.3 ...
数据库课程设计报告 工资管理系统数据库设计报告 设计题目:工资管理系统 学 院:信息技术学院 专 业:信息管理与信息系统 小组成员及分工 "组员 "分工 "分数 " " "编写代码及测试运行 " " " "概念设计 " " " "物理...
14-数据库课程设计任务书-某客运公司运输管理系统数据库设计.docx14-数据库课程设计任务书-某客运公司运输管理系统数据库设计.docx14-数据库课程设计任务书-某客运公司运输管理系统数据库设计.docx14-数据库课程设计...
掌握数据库设计基本方法及数据库设计工具; 掌握综合运用数据库原理、方法和技术进行数据库应用系统分析、设计和SQL实现关键功能的能力。 2、实验主要内容 掌握数据库设计基本步骤,包括数据库概念结构设计、逻辑...
数据库系统原理及课程设计报告--体育比赛数据库设计.docx数据库系统原理及课程设计报告--体育比赛数据库设计.docx数据库系统原理及课程设计报告--体育比赛数据库设计.docx数据库系统原理及课程设计报告--体育比赛...
毕业设计二手交易网站数据库设计 .docx毕业设计二手交易网站数据库设计 .docx毕业设计二手交易网站数据库设计 .docx毕业设计二手交易网站数据库设计 .docx毕业设计二手交易网站数据库设计 .docx毕业设计二手交易网站...
小说网站数据库设计.docx小说网站数据库设计.docx小说网站数据库设计.docx小说网站数据库设计.docx小说网站数据库设计.docx小说网站数据库设计.docx小说网站数据库设计.docx小说网站数据库设计.docx
指出高效的数据库设计原则以及设计方法 提高数据库的执行效率
小区物业管理系统数据库设计
图书馆借阅系统数据库设计 2.5.1 按借阅表查询历史借阅信息 (用1表示已经归还,0表示未归还) select * from Borrow where Bis=0; 2.5.2 查询到期未还的所有借阅者记录 (借阅者编号,姓名,图书名称,借阅日期...
数据库设计(论文+方案)数据库设计(论文+方案)数据库设计(论文+方案)数据库设计(论文+方案)数据库设计(论文+方案)
车辆管理系统数据库设计课程设计
聊天系统数据库设计和接口设计。
twitter数据库 twitter数据库设计 微博数据库设计
1数据库设计概述 .. 2数据库概念设计 .. 3数据库逻辑结构设计 .. 4数据库物理设计 .. 5数据库的实施与维护 ..
在线答题系统数据库设计
校园外卖系统数据库设计.docx校园外卖系统数据库设计.docx校园外卖系统数据库设计.docx校园外卖系统数据库设计.docx校园外卖系统数据库设计.docx校园外卖系统数据库设计.docx校园外卖系统数据库设计.docx校园外卖...
模板-数据库设计说明书.doc 模板-数据库设计说明书.doc 模板-数据库设计说明书.doc 模板-数据库设计说明书.doc 模板-数据库设计说明书.doc
Web数据库设计 Web数据库设计 Web数据库设计