天津理工大学2012级本科专业设计
图4.7 子系统模块的全局E-R图
Figure 4.7 Subsystem module of global E - R diagram
4.2 本章小结
该子系统模块采用e-r图来进行系统的概念设计,e-r图并且也提供了表示实体类型、属性以及联系的不同方法,以此用来描述现实世界的概念模型,更好的将系统中所涉及到的实体联系起来,消除了冗余,使系统在表的设计上更加合理。
17
天津理工大学2012级本科专业设计
第五章 逻辑设计
进行逻辑设计的时候,将现实世界中的概念数据模型设计为适于特定数据库系统的逻辑数据模式。关系数据库的数据模式是关系模式。
5.1 关系模式
为了使数据库结构更加合理、紧凑,消除不必要的一些存储异常,使数据库内数据的冗余尽量减小,便于数据的插入、删除和更新等操作。更需要对关系模式进行规范化的操作。当关系模式进行规范化的时候,也需要遵从概念单一化 \一事一地\的原则,也就是说一个关系模式去描述一个实体或这些实体间的一种必要联系。规范的本质就是要追求概念的单一化。关系模式进行规范化的方法:把一个关系模式的投影分解成为两个或更多的关系模式来操作。分解之后的关系模式集合应该与最初的关系模式进行\等价\,也就是说经过了自然联接就可以恢复原关系而可以不丢失重要信息,并且可以保持属性间合理的联系。现在概念设计的基础上可以得到如下的初步关系模式:
(1)餐厅(餐厅编号,餐厅名称,餐厅登陆名,餐厅密码,餐厅地址,餐厅电话)
(2)餐品(餐厅名称,餐品名称,价格)
(3)顾客(顾客编号,顾客登录名,顾客密码,顾客电子邮箱) (4)购物车(顾客登录名,餐品名称,价格,数量,餐厅名称)
(5)在线支付账单(账单编号,送餐员编号,送餐地址,送餐名称,餐品数量,订餐人姓名,订餐人电话)
(6)餐到付款账单(账单编号,送餐员编号,送餐地址,送餐名称,餐品数量,餐品单价,餐品总价,订餐人姓名,订餐人电话)
(7)送餐员(送餐员编号,送餐员姓名,送餐员登录名,送餐员密码,送餐类型)
关系范式的证明:
(1)餐厅(餐厅编号,餐厅名称,餐厅登陆名,餐厅密码,餐厅地址,餐厅电话)
证明:因为餐厅编号-->(餐厅名称,餐厅登陆名,餐厅密码,餐厅地址,餐厅电话),所以,餐厅编号是候选码;
又因为餐厅名称-->(餐厅编号,餐厅登录名,餐厅密码,餐厅地址,餐厅电话),所以,餐厅名称是候选码;
所以,餐厅编号、餐厅名称是主属性,餐厅登录名、餐厅密码、餐厅地址、餐厅电话是非主属性;
因为不存在非主属性对主属性的部分函数依赖,所以该范式属于第二关系范式; 又因为不存在非主属性对主属性的传递函数依赖,所以该范式属于第三关系范式;
又因为所有非主属性对每一个码都是完全函数依赖,没有任何属性完全函数依赖于非码的任何一组属性,所以此范式属于BC范式。 (2)餐品(餐厅名称,餐品名称,价格)
该表即不存在主键又不存在外键,所以不存在函数依赖,范式。
(3)顾客(顾客编号,顾客登录名,顾客密码,顾客电子邮箱)
证明:因为顾客编号-->(顾客登录名,顾客密码,顾客电子邮箱),所以,
18
天津理工大学2012级本科专业设计
顾客编号是候选码;
因为顾客登录名---->(顾客编号,顾客密码,顾客电子邮箱),所以,顾客登录名是候选码;
因为不存在非主属性对主属性的部分函数依赖,所以该范式属于第二关系范式; 又因为不存在非主属性对主属性的传递函数依赖,所以该范式属于第三关系范式;
又因为所有非主属性对每一个码都是完全函数依赖,没有任何属性完全函数依赖于非码的任何一组属性,所以此范式属于BC范式。
(4)购物车(顾客登录名,餐品名称,价格,数量,餐厅名称)
证明:因为顾客登录名---->(餐品名称,价格,数量,餐厅名称),所以,顾客登录名是候选码;
因为不存在非主属性对主属性的部分函数依赖,所以该范式属于第二关系范式; (5)在线支付账单(账单编号,送餐员编号,送餐地址,送餐名称,餐品数量,订餐人姓名,订餐人电话)
证明:因为账单编号---->(送餐员编号,送餐地址,送餐名称,餐品数量,订餐人姓名,订餐人电话),所以,账单编号是候选码。
又因为送餐员编号---->(账单编号,送餐地址,送餐名称,餐品数量,订餐人姓名,订餐人电话),所以,送餐员编号是候选码。
因为不存在非主属性对主属性的部分函数依赖,所以该范式属于第二关系范式; 又因为不存在非主属性对主属性的传递函数依赖,所以该范式属于第三关系范式;
又因为所有非主属性对每一个码都是完全函数依赖,没有任何属性完全函数依赖于非码的任何一组属性,所以此范式属于BC范式。
(6)餐到付款账单(账单编号,送餐员编号,送餐地址,送餐名称,餐品数量,餐品单价,餐品总价,订餐人姓名,订餐人电话)
证明:因为账单编号---->(送餐员编号,送餐地址,送餐名称,餐品数量,餐品单价,餐品总价,订餐人姓名,订餐人电话),所以,账单编号是候选码。
又因为送餐员编号---->(账单编号,送餐地址,送餐名称,餐品数量,餐品单价,餐品总价,订餐人姓名,订餐人电话),所以,送餐员编号是候选码。 因为不存在非主属性对主属性的部分函数依赖,所以该范式属于第二关系范式; 又因为不存在非主属性对主属性的传递函数依赖,所以该范式属于第三关系范式;
又因为所有非主属性对每一个码都是完全函数依赖,没有任何属性完全函数依赖于非码的任何一组属性,所以此范式属于BC范式。
(7)送餐员(送餐员编号,送餐员姓名,送餐员登录名,送餐员密码,送餐类型)
证明:因为送餐员编号---->(送餐员姓名,送餐员登录名,送餐员密码,送餐类型),所以,送餐员编号是候选码。
因为不存在非主属性对主属性的部分函数依赖,所以该范式属于第二关系范式;
19
天津理工大学2012级本科专业设计
5.2 本章小结
数据库逻辑设计是将还没有设计出来的数据库,即还处在概念意义上面的数据库模型设计为更适合自己系统程序的一种设计模式。而设计更全面、更规范的关系模式将会设计出更高效率、更符合自己程序系统的数据库系统。逻辑设计比物理设计更理论化和抽象化,关注对象之间的逻辑关系,提供了更多系统和子系统的详细描述。
20
天津理工大学2012级本科专业设计
第六章 物理设计
数据库物理设计是后半段。将一个给定逻辑结构实施到具体的环境中时,逻辑数据模型要选取一个具体的工作环境,这个工作环境提供了数据存储结构与存取方法,这个过程就是数据库的物理设计。
物理结构依赖于给定的DBMS和和硬件系统,因此设计人员必须充分了解所用RDBMS的内部特征、存储结构、存取方法。数据库的物理设计通常分为两步,第一,确定数据库的物理结构,第二,评价实施空间效率和时间效率。
6.1 物理表设计
该子模块系统使用到的表有:餐厅表,餐品表,顾客表,顾客购物车表,订
单表(包括在线支付订单表和餐到付款订单表)和送餐员表。 餐厅表主要收录了所有在网站系统上面注册过的餐厅信息,包括了主键餐厅编号和外键——餐厅名称。
表6.1 餐厅表 Table6.1 Dining room table 列名 CompanyId CompanyLoginName CompanyPassword CompanyName CompanyAddress CompanyTel 数据类型 Int Varchar(50) Varchar(50) Nvarchar(50) Nvarchar(50) Varchar(50) 是否允许为空 Not Null Not Null Not Null Not Null Not Null Not Null 说明 餐厅编号 主键 餐厅登录名 餐厅密码 餐厅名称 外键 餐厅地址 餐厅电话
餐品表主要收录了所有餐品的信息,通过餐厅名称来进行分类。
21
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库网上餐厅系统专业设计 - 图文(5)在线全文阅读。
相关推荐: