【数据库原理基础】数据库设计

文章目录

  • 前言
  • 一、简述关系模型的三要素
    • 1、数据结构
    • 2、数据操纵
    • 3、关系的完整性约束
  • 二、简述关系的6基本性质
  • 三、简述使用存储过程的优点
  • 四、什么是实体完整性?什么是参照完整性?
    • 1、实体完整性
    • 2、参照完整性
  • 五、关系模型
  • 六、简述数据库索引设计的原则。
  • 总结

前言

数据库设计是数据库系统开发的核心问题,对数据库系统的质量和性能有着深刻的影响。

一、简述关系模型的三要素

关系模型的三要素为:数据结构、数据操纵、完整性约束。

1、数据结构

数据结构单一,无论实体还是实体间的联系,均有单一的结构来表示该结构是一张规范化了的二维表,由行和列组成,称之为关系。

2、数据操纵

包括查询、新增、删除、修改,其中查询的表达能力是最主要的部分。关系模型数据操纵的特点是集合操作,即操作的对象和结果都是集合,这种操作方式也称为一次一集合方式。

3、关系的完整性约束

有实体完整性、参照完整性和用户定义的完整性三大类。其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,由关系DBMS自动支持,用户定义的完整性是应用领域需要遵循的约束条件,在具体领域中的语义约束。

二、简述关系的6基本性质

1、列是同质的。每一列中的分量是同一类型的数据,来自同一个域。
2、不同列可来自同一个域。每一列为一个属性,不同的属性要给予不同的属性名。
3、列的位置具有顺序无关性,列的次序可以任意交换。由于列顺序是无关紧要的,因此在许多实际关系数据库产品中,增加新属性时,一般是插值最后一列。
4、任意两个元组不能完全相同。这是笛卡尔积的性质决定。
5、分量必须取原子值,即每一个分量都必须是不可分割的数据项。

三、简述使用存储过程的优点

1、存储过程能够提高程序的执行速度。因为存储过程只在创建时进行编译,以后每次存储过程都不需要再重新编译,所以使用存储过程可以提高数据库的执行速度。
2、当对数据库进行复杂操作时,可将此复杂操作用存储过程封装起来与数据库提供的事物处理结合一起使用。而且,存储过程可以重复利用,从而减少数据库开发工作人员的工作量。
3、存储过程能够减少网络流量。对于同一个针对数据库对象的操作,如查询修改,如果这一操作所涉及的语句被组织成一个存储过程,那么当客户计算机上调用该存储过程时,网络中传送的只是调用语句,而不是查询过程中的所有语句,这就大大降低了网络的传输量。
4、安全性高。可设定只有某类用户才具有对指定存储过程的使用权限。

四、什么是实体完整性?什么是参照完整性?

1、实体完整性

实体完整性规则:若属性A是基本关系R的主属性,则属性A不能取空值。
1)实体完整性规则能够保证实体的唯一性;
2)实体完整性规则能够保证实体的可区分性。

2、参照完整性

参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应,则对于R中每一个元组在F上的值必须为:或者取空值(F的每个属性值均为空值),或者等于S中某个元素的主码值。例如,学生(学号,姓名,专业号),专业(专业号,专业),学生关系中的专业号需要参照专业关系中的专业号,称学生关系中的专业号是学生关系的外码,专业关系是被参照关系,学生关系为参照关系,外码与主码不一定要同名,学生关系中的外码值要么为空值,要么为专业关系中对应的专业号的值。

五、关系模型

3.13 对于学生选课关系,其关系模式为
学生(学号,姓名,性别,所在系,班号,出生日期)
课程(课程号,课程名,学时,学分,选修课程号)
选修(学号,课程号,成绩)
用关系代数完成如下查询:
1)求学过数据库课程的学生的姓名和学号。
2)求学过数据库和数据结构的学生姓名和学号。
3)求没学过数据库课程的学生学号。
4)求学过数据库的选修课的学生学号。
∏姓名、学号(δ课程名 = ‘数据库’(学生⨝课程⨝选修))
∏姓名、学号(δ课程名 = ‘数据库’∪‘数据结构’(学生⨝课程⨝选修))
∏学号(学生) - ∏姓名、学号(δ课程名 = ‘数据库’(学生⨝课程⨝选修))
∏学号、课程号 / ∏选修课程号(δ课程名 = ‘数据库’(选修))

3.18 请设计一个图书馆数据库,此数据库中对每个借阅者保存的记录包括:读者号、姓名、地址、性别、年龄、单位。对每本书保存有:书号、书名、作者、出版社。对每本被借出的书保存有读者号、借出日期和应还日期。要求:给出该图书馆数据库的E-R图,再将其转换为关系模型。
【数据库原理基础】数据库设计_第1张图片

关系模型:
借阅者(读者号,姓名,地址,性别,年龄,单位)
图书(书号,书名,作者,出版社)
借阅(读者号,书号,借出日期,应还日期)

3.19 设有一家百货商店,已知信息有:

  1. 每个职工的数据:职工号、姓名、地址和他所在的商品部。
  2. 每一商品部的数据:职工、经理和经销的商品。
  3. 每种经销的商品数据:商品名、生产厂家、价格、型号(厂家定的)和内部商品代号(商店规定的)。
  4. 关于每个生产厂家的数据:厂名、地址、向商家提供的商品价格。
    请设计该百货商店的概念模型,再将概念模型转换为关系模型。注意某些信息可用属性表示,其他信息可用联系表示。
    在这里插入图片描述

关系模型:
职工(职工号,姓名,地址)
经理(经理号,姓名,地址)
商品部(商品部号)
商品(商品名,生产厂家,价格,型号,内部商品代号)
生产厂家(厂名,地址,商品价格)
销售(职工号,商品号)
经营(商品部号,商品号)

六、简述数据库索引设计的原则。

设计索引方法的基本原则是:
1)如果一个(或一组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建立索引(或组合索引)。
2)如何一个属性经常作为最大值或最小值等聚集函数的参数,则考虑在这个属性上建立索引。
3)如果一个(或一组)属性经常在连接操作的连接条件中出现,则考虑在这个(或这组)属性上建立索引(或组合索引)。
4)大表应当建立索引,小表则不必建索引。在确定对基本表建立索引时,表的数据越多,记录越长,越有必要建立索引,建立索引后加快查询速度的效果也越明显。相反,对于记录较少的基本表,建立索引的意义不大。

总结

以上就是本文内容,欢迎评论或私聊哦!
我们下次再会!!!

你可能感兴趣的:(数据库基础,数据库架构,数据仓库,dba,数据库开发)