精品课程网上城数据库说明.docx
《精品课程网上城数据库说明.docx》由会员分享,可在线阅读,更多相关《精品课程网上城数据库说明.docx(18页珍藏版)》请在冰豆网上搜索。
精品课程网上城数据库说明
数据库设计说明书
November16
2010
网上书城
数据库设计说明书(GB8567——88)
1引言
1.1编写目的
本文档说明本小组项目(网上书城系统)的数据库的设计,用于指导该系统在数据库存储各方面的内容,以供本小组其他成员在使用到数据库时更便利,以及为了更好的进行具体的数据库设计。
是系统开发的程序员、系统分析人员的基准文档。
1.2背景
A.软件系统名称:
网上书城系统
B.任务提出者:
本小组所有人员
开发者:
本小组所有人员
C.本系统将使用本小组成员都比较熟悉的数据库开发工具(SQLServer2005)。
1.3定义
1.关系模型:
用二维表格结构表示实体集,外键表示实体间联系的数据模型称为关系模型。
关系模型是由若干个关系模式组成的集合。
2.关系模式:
关系模式实际上就是记录类型。
它包括:
模式名、属性名、值域名、模式的主键。
关系模式仅是对数据特性的描述。
3.关系实例:
就是一个关系、即一张二维表格。
4.属性:
在关系模式中,字段名称为属性。
5.域:
在关系中,每个属性都有一个取值范围,称为属性的值域。
6.元组:
在关系中,一条记录就是元组。
7.候选码:
在关系中,能唯一标识元组的属性集称为关系模式的候选码。
8.主码:
用户选做元组标识的一个候选码作为主码.
9.外码:
某个关系的主码相应的属性在另一个关系中出现,此时该主码就是另一个关系的外码。
10.实体完整性规则:
这条规则要求关系中的元组在组成主码属性上不能有空值。
11.参照完整性规则:
这条规则要求“不引用不存在的实体”。
其形式如下:
如果属性集K是关系模式R1的主码,同时K也是R2上的外码,那么R2关系模式中,K的取值只有两种可能,要么是空,要么等于R1关系模式中某个主键的值。
使用这条规则应注意一下三点:
1).外码和相应的主码可以不同名,只要定义在相同的值域上即可。
2).R1和R2也可以是同一关系模式,表示了属性之间的联系。
3).外码值是否允许为空,应该视具体情况而定。
1.4参考资料
[1].钱乐秋,赵文耘,朱军钰编著.软件工程.北京:
清华大学出版社,2009年12月第6次印刷。
[2].国家标准.数据库设计说明书(GB8567——88)。
[3].王珊.数据库系统概论.北京:
高等教育出版社,第四版。
2外部设计
2.1标识符和状态
数据库软件:
MicrosoftSQLServer2005
系统要求建立的数据库名称:
BookShop
该数据库的所有以ID结尾的标识符字段,自动增量都是1.
2.2使用它的程序
在本小组项目网上书城系统中,在用户注册、用户登录验证、更新书籍信息、更新购物车信息以及购买书籍等都将用到该数据库。
2.3约定
在软件系统开发中,数据库设计应该遵循必要的数据库范式理论,一减少数据的冗余、保证数据库的完整性和正确性。
数据库命名规范:
1.数据库涉及字符规则:
采用26个英文字母(去分大小写)和0—9这十个自然数,加下划线“-”组成,共63个字符,不能出现其他字符(注释除外)。
2.数据库对象命名规则:
数据库对象包括表、试图(查询)、存储过程、函数、约束。
对象名字尽量用实际名字表示,实际长度不超过50.
3.实际名字:
实际名字尽量描述实体的内容,由单词或者单词组合,每个单词的首字母大写,其他字母小写,不以数字和下划线“_”开头。
4.数据库设计文档规则:
所有数据库设计要写成文档,文档以模块化形式表达。
大致格式如下:
=====================================================
表名:
Users
建表人:
wuyi
日期:
2010-11-12
描述:
保存用户信息资料
具体内容:
UserIDint自动增量用户编号
UserNamenvarchar(16)用户名
…………..
=====================================================
5.SQL语句规则:
所有SQL关键词全部大写,比如SELECT,UPDATE,FROM,ORDRRBY,SET等。
2.4专门指导
系统使用ADO.NET3.5实现与数据库的接口,该接口基于OLEDB模型建立,是应用程序与数据库的桥梁,在ADO.NET3.5上将建立与数据库的通讯连接、执行T-SQL,有关ADO.NET3.5的功能、特征的描述,请参考其他的资料。
应用程序的数据变换,通过T-SQL相关的插入信息来实现。
用用程序的数据查询,通过T-SQL相关的查询语句来实现,并且应用程序在其结果集上进行操作。
其他的专门知道的说明、文档等,请参考MSDN所提供的、关于ADO.NET3.5的使用上的帮助。
系统使用IIS5.1作为应用和发布服务器,IIS5.1提供WorldWideWebPublishingService,提供基于Internet的页面发布和管理服务,在本系统中将使用到其站点和目录设置、安全和访问权限配置、日志和筛选等常用操作,这些操作的详细说明可以参考IIS提供的帮助或者其他的资料获得。
2.5支持软件
SQLServer2005提供了核心的引擎,为支持本系统的数据库BookShop,需要使用到SQLServer20005的几个组件,包括:
A、企业管理器:
提供了数据管理和数据库操作的集成平台;
B、查询分析器:
T-SQL调试、优化、性能检测的工具;
C、事件探查器:
提供了对SQLServer执行操作的检测,并以T-SQL的形式记录;
D、服务管理器:
提供SQLServer停止、启动的控制工具;
此外,还包括可能会使用到的数据导入和导出工具,为数据库提供数据的输入。
支持软件同时包括IIS的发布组件。
3结构设计
3.1概念结构设计
从需求分析可知,本数据库将反映的现实世界实体有如下几种:
1.会员信息
2.图书信息
3.图书分类信息
4.购物车信息
5.订单信息
6.订单详细信息
图书封面图
图书市场价格
销售价格
图书促销
图书数量
图书信息
图书分类编号
图书信息
图书名称
图书编号
各个实体属性如下
图书分类信息
图书分类编号
图书分类名称
订单信息
订单日期
订单编号
用户编号
全局关系模式如下(其中省略各个实体的属性):
E-R图
3.2逻辑结构设计
说明把上述原始数据进行分解、合并后重新组织起来的数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构和文卷结构、所建立的各个文卷之间的相互关系,形成本数据库的数据库管理员视图。
以下不包括SQLServer为数据库提供的默认的系统表。
表名
存储实体描述
类型
主键
引用字段
Books
图书信息
基础表
图书编号
图书分类编号
Categories
图书分类信息
基础表
图书分类编号
无
OrderContent
详细订单信息
基础表
订单编号
图书编号
Orders
订单信息
基础表
订单编号
用户编号
ShopCart
购物车信息
基础表
购物车编号
图书编号
Users
会员信息
基础表
用户编号
无
各种关系表设计如下:
图书信息(图书编号、图书名称、图书封面图、图书市场价格、销售价格、图书信息、图书数量、图书促销、图书分类编号)
会员信息(用户编号、用户名、用户密码、真实姓名、Emale、身份证号、电话号码、通信详细地址、区号、移动电话、QQ、MSN)
图书分类信息(图书分类编号、图书分类名称)
购物车信息(购物车编号、购物车标识、图书数量、购买日期、图书编号)
订单信息(订单编号、订单日期、用户编号)
订单详细信息(订单编号、图书数量、订单价格、图书编号)
会员信息表
图书信息表
图书分类信息表
购物车信息表
订单信息表
订单详细信息表
注:
其中,用户信息表较概要设计时有所改动,新增加了一行Level用此来判断登陆的用户是管理员还是普通用户。
当Level的值是1时表示当前用户是管理员,当Level的值是0时,表示当前用户是普通用户。
各表之间的关系如下:
3.3物理结构设计
1).数据库名称:
BookShop
2).中文名称或者意义:
网上书城系统
3).创建日期:
2010-11-12
4).创建人:
wuyi
5).数据文件初始大小:
100M,自动增量为1M。
6).数据文件物理位置:
D:
\ProgramFiles\MicrosoftSQLServer\MSSQL10.MSSQLSERVER\
MSSQL\DATA\BookShop.mdf
7).日志文件大小:
10M。
8).日志文件初始位置:
:
D:
\ProgramFiles\MicrosoftSQLServer\MSSQL10.MSSQLSERVER\
MSSQL\DATA\BookShop.ldf
9).文件组名称:
PRIMARY(因电脑不同而不同)
10).选项属性:
排序规则
Chinese_PRC_CI_AS
恢复模式
完整
兼容级别
SQLServer2005(90)
默认游标
GLOBAL
提交关闭游标功能已启用
False
数据库为只读
False
限制访问
MULTI_USER
已启用加密
False
自动创建统计信息
True
自动更新统计信息
True
自动关闭
False
自动收缩
False
自动异步更新统计信息
False
注:
Chinese_PRC_CI_AS指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。
_CI(CS) 是否区分大小写,CI不区分,CS区分。
_AI(AS) 是否区分重音,AI不区分,AS区分 。
_KI(KS) 是否区分假名类型,KI不区分,KS区分 )
4运用设计
4.1数据字典设计
数据字典由字典条目组成,每个条目描述DFD中的一个元素。
数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。
相关定义如下
1.关系模型:
用二维表格结构表示实体集,外键表示实体间联系的数据模型称为关系模型。
关系模型是由若干个关系模式组成的集合。
2.关系模式:
关系模式实际上就是记录类型。
它包括:
模式名、属性名、值域名、模式的主键。
关系模式仅是对数据特性的描述。
3.关系实例:
就是一个关系、即一张二维表格。
4.属性:
在关系模式中,字段名称为属性。
5.域:
在关系中,每个属性都有一个取值范围,称为属性的值域。
6.元组:
在关系中,一条记录就是元组。
7.候选码:
在关系中,能唯一标识元组的属性集称为关系模式的候选码。
8.主码:
用户选做元组标识的一个候选码作为主码.
9.外码:
某个关系的主码相应的属性在另一个关系中出现,此时该主码就是另一个关系的外码。
10.实体完整性规则:
这条规则要求关系中的元组在组成主码属性上不能有空值。
11.参照完整性规则:
这条规则要求“不引用不存在的实体”。
其形式如下:
如果属性集K是关系模式R1的主码,同时K也是R2上的外码,那么R2关系模式中,K的取值只有两种可能,要么是空,要么等于R1关系模式中某个主键的值。
使用这条规则应注意一下三点:
1).外码和相应的主码可以不同名,只要定义在相同的值域上即可。
2).R1和R2也可以是同一关系模式,表示了属性之间的联系。
3).外码值是否允许为空,应该视具体情况而定。
12.实体型表示建立概念模型的对象,用长方形表示,并且在框内写上实体名。
如会员信息实体表示如下:
会员信息
13.实体属性是实体的说明。
用椭圆表示实体的属性,并用无向边把实体与属性连接起来。
如会员信息实体有用户编号、用户名等。
E-R图如下:
会员信息
用户编号
用户名
……
14.实体间的联系是两个或者两个以上的实体类型之间的联系,并且实体联系之间必须有联系名,联系用菱形表示。
并且要用无向边把实体分别与菱形相连,同时标明实体之间的联系是一对一(1:
1)或者一对多(1:
n或者1:
*)或者多对多(n:
m或者*:
*)的联系。
1.数据字典条目:
数据流、文件、数据项(组成数据流和文件的数据)、加工、源或宿。
其中,有关加工逻辑的详细设计可用“小说明”来描述。
1).数据流条目描述要求如下表:
名称
数据流名(可以是中文名或西文名称)
表名
名称的另一个名字
简述
对数据流的简单说明
数据流组成
描述数据流由那些数据项组成
数据流来源
描述数据流从哪个加工或源流出
数据流去向
描述数据流流入到哪个加工或宿
数据量
系统中该数据流的总量
峰值
某时刻处理处理的最大数量
注解
对该数据流的补充说明
2).文件条目描述要求如下表:
名称
文件名
别名
文件的另一个名字
简述
对文件的简单说明
文件组成
描述文件的记录由那些数据项组成
写文件的加工
描述哪些加工写文件
读文件的加工
描述哪些加工读文件
文件组织
描述文件的存储方式(顺序、索引),排序的关键字
使用权限
描述各类用户对文件的使用权限(读、写、修改)
数据量
问件的最大记录数
存取频率
描写对该文件的
注解
对该文件的其他补充说明
3).数据项条目描述要求入下表:
名称
数据项名
别名
数据项的另一个名字
简述
对数据项的简单描述
数据类型
描述数据项的类型
计量单位
指明数据项值的计量单位
取值范围
描述数据项允许的值域
注解
对该数据项的补充说明
4).加工条目描述要求如下表:
名称
加工名
别名
加工的另一个名字
加工号
加工在DFD中的编号
简述
对加工功能的简要描述
加工逻辑
简要描述加工逻辑、或对加工的规约的索引
输入数据流
描述加工的输入数据流,包括读哪些文件名
输出数据流
描述加工的输出数据流,包括写哪些文件名
异常处理
描述加工过程可能出现的异常情况极其处理方式
加工激发条件
描述执行加工的条件
注解
对加工的补充说明
5).源或宿条目要求如下表:
名称
源或宿的名称(外部实体名)
别名
源或宿的另一个名字
简要描述
对源或宿的简单描述(包括指明该外部实体在DFD中是做“源”还是做“宿”以及既做“源”又做“宿”)
输入数据流
描述源向系统提供那些输入数据流
输出数据流
描述系统向宿提供哪些输出数据流
注解
对源或宿的补充说明
注:
其中划横线的项是必选项,其他项为可选项。
2.数据字典使用的描述符号
为了方便描述数据流的组成和文件的组成,定义下列描述符号,如下表:
符号
名称
举例
=
定义为
x=…表示x由…组成
+
与
a+b表示a与b
[…,…]
或
[a,b]表示a或b
[…|…]
或
[a|b]表示a或b
{…}
重复
{a}表示a重复0或多次
{…}nm
重复
{a}38表示a重复3到8次
(…)
可选
(a)表示a重复0或1次
“…”
基本数据元素
“a”表示a是基本元素
4.2安全保密设计
数据库只被少数授权的用户访问,必须提供正确的用户名和当前密码。
存储数据库的服务器只能让系统管理员或者少数高级管理员登陆。
数据库的安全策略,遵从SQLServer2005的安全策略事项。