2一、概念设计

  1.1 概念设计关键知识

  1.2 辨析

  实体与属性的区别:

    ①实体能进一步用多个属性来描述,属性却不能,属性是不可再细分/分割的原子项。

    ②实体内部或者多个实体之间存在联系,而属性无。

  实体与联系的区别:

    ①联系不能单独存在,必须由它联系的双方或者多方共同决定,而实体不需要。

    ②联系的码由它关联的实体的主码决定,而实体的码和其它实体或联系无关。

  一般很多人容易将三元联系和三个二元联系混淆。

  1.3 附属图

图1.1 三元联系(三个实体的关系)

图1.2 一元联系

图1.3 各类属性

图1.4 二元联系

二、逻辑设计

  1.1 逻辑设计过程与关键技术

 

  1.2 范式的作用与意义

    范式将帮助我们保证数据的有效性和完整性。

    规范化的实质是在数据库设计中逐一挑出复杂实体,从中抽取简单实体,并重复该过程,直到每张表都只代表一件事物,且表中每个属性都仅描述该事物为止。从最终方案看,规范化至少能带来下列成效:

      1)减少数据冗余,提高硬盘空间利用率。

      2)避免编写不必要的、用来使冗余数据同步多的代码。

      3)提高了单标查询的效率,减少 了冗余数据引发的不必要操作,以及由此带来的数据物理块的I/O

      4)数据的可逆性好。在做连接(join)查询或者合并表时,也不重复。

      5)减少每张表使用的索引数量,提高了索引在查询中的使用效率。

【参考文献】

  吴爱华.数据库应用系统开发过程、技术及案例详解.中国人民大学出版社.

数据库设计理论与实践·<二>概念设计与逻辑设计的更多相关文章

  1. [.NET领域驱动设计实战系列]专题二:结合领域驱动设计的面向服务架构来搭建网上书店

    一.前言 在前面专题一中,我已经介绍了我写这系列文章的初衷了.由于dax.net中的DDD框架和Byteart Retail案例并没有对其形成过程做一步步分析,而是把整个DDD的实现案例展现给我们,这 ...

  2. 数据库设计理论与实践·<四>数据库基本术语及其概念

    一.关系模型 关系模型是最重要的一种数据模型.关系数据库模型系统采用关系模型作为数据的组织方式. 关系模型的数据结构: 关系:一张表 元组:一行记录. 属性:一列 [码(键,key)]:表中的某个属性 ...

  3. 数据库设计理论与实践·<三>物理设计

    一.物理设计核心任务与关键细节 二.物理设计经验之谈 1.数据类型的设计:建议字段数据类型定义时结合以下几点(以MYSQL为例) 1)不适用image,而使用varbinary等 2)不使用text和 ...

  4. 数据库设计理论与实践·<一>总结

    一.数据库生命周期 数据库生命周期流程图如下: 二.各阶段附图 附图1.1 数据流图 附图1.2 数据字典-方式1 补充说明:数据字典既可以单张表格表示,也可以多种(数据项表/数据结构表/数据流表/外 ...

  5. 数据库设计理论与实践·<五>常见疑难杂症

  6. 【第一季】CH05_FPGA设计Verilog基础(二)Enter a post title

    [第一季]CH05_FPGA设计Verilog基础(二) 5.1状态机设计 状态机是许多数字系统的核心部件,是一类重要的时序逻辑电路.通常包括三个部分:一是下一个状态的逻辑电路,二是存储状态机当前状态 ...

  7. [.NET领域驱动设计实战系列]专题十一:.NET 领域驱动设计实战系列总结

    一.引用 其实在去年本人已经看过很多关于领域驱动设计的书籍了,包括Microsoft .NET企业级应用框架设计.领域驱动设计C# 2008实现.领域驱动设计:软件核心复杂性应对之道.实现领域驱动设计 ...

  8. 我的“第一次”,就这样没了:DDD(领域驱动设计)理论结合实践

    写在前面 插一句:本人超爱落网-<平凡的世界>这一期,分享给大家. 阅读目录: 关于DDD 前期分析 框架搭建 代码实现 开源-发布 后记 第一次听你,清风吹送,田野短笛:第一次看你,半弯 ...

  9. DDD(领域驱动设计)理论结合实践

    DDD(领域驱动设计)理论结合实践   写在前面 插一句:本人超爱落网-<平凡的世界>这一期,分享给大家. 阅读目录: 关于DDD 前期分析 框架搭建 代码实现 开源-发布 后记 第一次听 ...

随机推荐

  1. list根据某个字段去重

    方法一:使用Set List<User> newList = new ArrayList<User>(); Set<String> set = new HashSe ...

  2. A1034. Head of a Gang

    One way that the police finds the head of a gang is to check people's phone calls. If there is a pho ...

  3. Html的简单学习笔记

    1.Html简介 1)什么是html: HyperText Markup Language:超文本标记语言,网页语言. >超文本:超出文本范围. >标记: html中所有的操作都是使用标记 ...

  4. unittest的使用二——生成基于html的测试报告

    mac下的安装: 1.下载HTMLTestRunner.py文件,下载地址http://tungwaiyip.info/software/HTMLTestRunner.html,可以复制里面的内容到一 ...

  5. CSUST 1011 神秘群岛 (Dijkstra+LCA)

    神秘群岛   Description 小J继续着周游世界的旅程,这次他来到了一个神奇的群岛.这片群岛有n个岛屿,同时这些岛屿被标上了1-n的编号. 每个岛屿上面都有神奇的传送门,传送门可以把小J从当前 ...

  6. python3: requests模块的使用;

    requests库常用于http请求,可以很方便对网页进行爬取: 主要方法(七个): 方法 解释 requests.request() 构造一个请求,支持以下各种方法 requests.get() 获 ...

  7. 8款压箱底的Mac屏幕截图和录音录像工具软件,请你务必低调使用

    以下几款是是Mac上优秀的屏幕截图.录像和录音工具,有了这些工具,在Mac上进行截屏.录制视频或者录音都会事半功倍. 1. Snagit Mac上最好用最强大的屏幕截图工具,支持各种方式的屏幕截图以及 ...

  8. MySQL_函数(待续)

    1.REPLACE(str,from_str,to_str) 定义:REPLACE(str,from_str,to_str) 解释:返回值是把字符串str 中的子串from_str 全部替换为to_s ...

  9. Systemd 添加自定义服务(开机自启动)

    Systemd 简介:https://fedoraproject.org/wiki/Systemd/zh-cn 一.service unit 常用命令,以 mysql 服务为例 # 开机启动 syst ...

  10. Redis_集群_主从模式_哨兵模式

    1.主从模式 2.哨兵模式