数据库原理教案高技版

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1章数据库系统基础知识

1.1 数据库系统概述

一、基本概念

1.数据

2.数据库(DB)

3.数据库管理系统(DBMS)

Access

小型VFP

SQL server

Oracle

大型DBMS MySQL

DB2

4.数据库系统(DBS)

数据库(DB)

数据库管理系统(DBMS)

开发工具

应用系统

四、数据库管理系统的功能和组成

1.DBMS 的功能:负责对数据库进行统一的管理与控制。 ① 数据定义:对数据库中各对象的结构进行定义。

② 数据操纵:包括对数据库进行查询、插入、删除、修改等操作。 ③ 数据控制:包括安全性控制、完整性控制、并发控制、数据库恢复。 2.DBMS 的组成:

DDL 语言 DML 语言 DCL 语言 实用程序

注意:①SQL 集DDL ,DML ,DCL 功能于一体; ②SQL 既是宿主型语言,又是嵌入式语言; ③ 所有应用程序通过SQL 语句才能访问数据库 五、开发、管理、使用数据库系统涉及的人员

系统分析员:负责应用系统的需求分析和数据库设计

程序员:编写代码

数据库管理员(DBA ):负责数据库的维护

最终用户

1.2数据模型 1.

2.1 概念模型

一、三个世界

1.现实世界:即具体事物

2.信息世界:对现实世界中的具体事物抽象为概念模型(即E-R 图),E-R 图与DBMS 无关。 3.机器世界:将E-R 图转换为某一种数据模型,数据模型与DBMS 相关。 二、实体及属性

1.实体:客观存在并可相互区别的人、事、物。 2.属性:

3.关键字(码、key ):能唯一标识每个实体又不含多余属性的属性组合。 一个表的码可以有多个,但主码只能有一个。

例:借书表(学号,姓名,书号,书名,作者,定价,借期,还期) 规定:学生一次可以借多本书,同一种书只能借一本,但可以多次续借。 4.实体型:即二维表的结构

例 student(sno ,sname ,ssex ,sage ,sdept) 5.实体集:即整个二维表 三、两实体集间实体之间的联系

1:1联系:如果对于实体集A 中的每一个实体,实体集B 中至多有一个实体与之联系,反

开发单位

使用单位

之亦然,则称实体集A 与实体集B 具有一对一联系。记为1:1。

1:n 联系:如果对于实体集A 中的每一个实体,实体集B 中有n 个实体(n ≥0)与之联系,反之,对于实体集B 中的每一个实体,实体集A 中至多只有一个实体与之联系,则称实体集A 与实体B 有一对多联系。记为1:n 。

m :n 联系:如果对于实体集A 中的每一个实体,实体集B 中有n 个实体(n ≥0)与之联系,反之,对于实体集B 中的每一个实体,实体集A 中也有m 个实体(m ≥0)与之联系,则称实体集A 与实体B 具有多对多联系。记为m :n 。

四、概念模型:常用E-R 图表示。

属性:

联系:

② E-R 图可以等价转换为层次、网状、关系模型。

例:某商业集团管理系统涉及两个实体型,实体型“商店”有商店编号、商店名、地址和电话属性;实体型“顾客”有顾客编号、姓名、性别、出生年月和家庭地址属性。顾客与商店间存在着消费联系。假定一位顾客可去多个商店购物,多位顾客可以前往同一商店购物,必须记下顾客每次购物的消费金额。

(1)试为此系统设计E-R 图。

(2)将此E-R 图转换成关系模式,并注明每个关系模式的主码和外码。

① ② ③ ① ② ③ ① ② 关系模型的存取路径对用户透明; ③ 查找关系数据库中的记录,速度最慢。

小结:数据有三种模型,DBMS 就有三种类型,DB 亦有三种类型。

思考与练习

1.学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课程有若干学生选修。用E-R图画出概念模型。

第2章关系数据库系统

2.1 关系模型的数据结构

①关系:一个关系就是一个二维表;

②关系模式:在实体型的基础上,注明主码。

③元组:二维表的一行,即实体;

④码、候选码:一个关系模式可以有多个候选码。

⑤主码:任选候选码中的一个。

⑥主属性:主码中包含的各个属性。

⑦非主属性:不包含在主码中的各个属性。

⑧外码:设F是关系R的一个属性,不是R的主码,但却是另一个关系S的主码,则称F 是关系R的外码。

例:student ( sno, sname, ssex, sage, sdept)

Sc ( sno, cno, grade)

Sc的主码为:(sno,cno);外码为:sno

2.2 关系的完整性

1.实体完整性:指关系的所有主属性都不能取空值。

注意:实体完整性不仅仅是主码整体不能取空值。

2.参照完整性:指一个关系外码的取值必须是相关关系中主码的有效值或空值。

例:班级( 班号,人数)

学生(学号,姓名,性别,密码,班号)

在学生表中,班号的取值必须是班级表“班号”的值或空值。其中班级称为“主键表”,学生称为“外键表”。

3.为了保证参照完整性,应该对数据库的修改加以限制,包括:

插入约束

删除约束(限制删除、级联删除)

更新约束(限制更新、级联更新)

2.3 数据库设计(见P137)

2.3.1 数据库设计的步骤

一、数据库设计的步骤

①需求分析:了解分析用户的需要、要求。

②概念结构设计:根据需求分析的结果画总体E-R图。

③逻辑结构设计:将总体E-R图转换为关系模式,并优化。

④物理结构设计:即决定为表中的哪些列创建聚集索引还是非聚集索引。

⑤数据库实施:定义数据库结构,组织数据入库,编写应用程序。

⑥数据库运行与恢复

相关文档
最新文档