Craft6数据库设计教程系列——基本概念(关系模型、实体、联系、域和属性).doc

上传人:scccc 文档编号:12460316 上传时间:2021-12-04 格式:DOC 页数:3 大小:37.50KB
返回 下载 相关 举报
Craft6数据库设计教程系列——基本概念(关系模型、实体、联系、域和属性).doc_第1页
第1页 / 共3页
Craft6数据库设计教程系列——基本概念(关系模型、实体、联系、域和属性).doc_第2页
第2页 / 共3页
Craft6数据库设计教程系列——基本概念(关系模型、实体、联系、域和属性).doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《Craft6数据库设计教程系列——基本概念(关系模型、实体、联系、域和属性).doc》由会员分享,可在线阅读,更多相关《Craft6数据库设计教程系列——基本概念(关系模型、实体、联系、域和属性).doc(3页珍藏版)》请在三一文库上搜索。

1、、关系模型 Relatio ns Model关系模型定义:关系模型是采用二维表格结构表达实体类型及实体间联系的数据模型关系模型的规则定义了数据可以被表达的方式(数据结构)、数据可以被保护的方式(数据完整性)以及在数据上可以实现的操作(数据操作)。结构性定义了数据信息的组织方式和表达的方式,即信息使用关系(relations )来表达,关系则由和元(tuple)组成,而元则是由 属性和值组成。通俗来讲:关系”就是二维表格中全部表头和所有数据的集合。元”就是一列的表头和该列所有数据的集合。属性”即表头的名称,即字段名。这样就形成现在关系数据库数据表的表达形式了,所以:关系即表示成关系数据库中的 数

2、据表” *数据完整性定义了结构性组件中,关系之间的生成和维持关联性的方法。如:1. 数据有效性。针对字段的值的有效性控制。2. 实体完整性。要求每一个表中的主键字段都不能为空或者重复的值。3. 参照完整性。即将两个表的 元”关联起来的方式。如1对多关联,即在多方的表 要创建记录,该列的元的值必须在1方的元中存在。数据操作分为数据处理和应用处理两种角度。1. 数据处理:通过若干张表的查询和计算的结果形成新表的数据。2. 应用处理:即基于数据表开发的 CRUD以及其它复杂的业务功能。1、实体 Entity实体就是用来存储信息的事物在关系数据库中,现实世界的实体以及实体间的各种联系均用关系来表示实体

3、对应现实世界的业务,在分析时需要进行识别,分析出实体模型和它们 之间的联系。如电商系统常见的实体模型有销售订单(SalesOrder )、采购订单(BuyOrder )、 客户(Customer )、产品(Product、优惠券(Coupon、礼品卡(GiftCard、购物车(ShoppingCart )这些实体存在若干属性,每一组属性值可以表达一个独立的实体对象。有些实体非常复杂,可能涉及使用多个关系(多个表)来表达,比如订单, 可能包括订单、订单项、发货地址、发票地址、支付方式、订单备注等等。这些信息构成了完整的订单实 体,而这些信息每一个又是一个独立的关系(在数据库设计中会被设计为一张独

4、立的表)。所以这里存在一个聚合的概念,即由多张表聚合成一个业务意义上的实体模 型。三、联系 Relati on ship指的是实体之间的联系。同样是使用关系来表示,即每种联系就是一张表。联系大多数是二元的,即常见的1对1、1对多、多对1、多对多等联系方式。但也存在三元或多元的联系,比如 顾客从某商铺购买了某个产品”这个关联 (产品和商铺是多对多关联的一对多关联最为常见,而且在实践中,对于多对多也会设计为两个一对多联 系。四、域 Domain一个域是一个属性(字段、可能包括的所有有效值的集合。单纯从数据结构是无法有效的体现该属性在实际业务中的可选值的,比如对 于产品状态”这个属性,可选的状态有:

5、draft=草稿;on_sale=上架;not_on_sell= 下架;forbidden=禁售。(或者更多), 但这个约束一般通过应用层面来达成,数据表设计时,是声明这个属性的域定义。域和数据有效性是不同的。数据有效性是针对数据完整性的概念,比如 邮箱”、 电话号码”等字段的格式验证。但如果规定了只能从某个范围内选择电话号码,则这个范围则是域。在数据库设计中,如果使用 PowerDesigner,有专门的Domain功能可供使 用。五、属性Attribute(即数据表的Column )系统需要保存每个实体的具体信息,这些信息就是实体的属性。比如对于客户 Customer,有 ID、Name、

6、Title、Job、Gender 等。属性一般分为三类:.单值属性。多值属性:最简单的是字符串类型,值之间通过逗号分隔,如电话号码(允许多 个)派生属性:根据其它属性的值计算出的属性,如年龄可以根据生日。派生属性属 于冗余的范畴,但为了查询的方便和效率,一般也进行设计。在实际设计中,决定是否将一个属性加入到实体需要看业务需要。比如对于客户实体的 地址”属性。*在电商系统中:一个客户可能需要保存多个地址,而且地址信息比较复杂,包括国家、省市、县 区、地址、邮编、电话等,这时便应该将地址分离出来作为一个独立的实体进行设计。*在论坛、博客等系统中:用户的地址根本无需这么复杂,则直接作为用户(或客户)实体的一个属性即可。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1