数据库系统概论01

上传人:飞*** 文档编号:57026747 上传时间:2018-10-18 格式:PPT 页数:42 大小:1.71MB
返回 下载 相关 举报
数据库系统概论01_第1页
第1页 / 共42页
数据库系统概论01_第2页
第2页 / 共42页
数据库系统概论01_第3页
第3页 / 共42页
数据库系统概论01_第4页
第4页 / 共42页
数据库系统概论01_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《数据库系统概论01》由会员分享,可在线阅读,更多相关《数据库系统概论01(42页珍藏版)》请在金锄头文库上搜索。

1、An Introduction to Database Systems,数据库原理及应用 An Introduction to Database Systems,吴爱华,教材及参考书(1), 教材 萨师煊,王珊:数据库系统概论(第四版) 高等教育出版社,2006.5 A First Course in Database Systems Jeffrey.D.Ullman, Jennifer Widom Dept. Of Computer Science Stanford University,教材及参考书(2), 参考书 Date C J, An Introduction to Database

2、 System (Ed.7), Addison-Wesley,2000 上机软件 SQL Server 2005,学习方式, 听课(启发式、讨论式) 读书(预习、复习) 报告 (综合练习) 答疑方式: 每周三13点到15点之间 信息207 Email: ,考试成绩,平时成绩 30%(书面作业、综合练习、课堂表现) 期末考试 70% 实验评分: 平时检查:60% 实验报告:40%,数据库是什么?为什么要学数据库?,日常生活中,你有什么数据需要保存? 你如何保存和管理这些数据的? 这样保存和管理有什么不足吗?方便查找、修改、删除和增加吗? 当数据量非常大的时候,你觉得你们这些方法有效吗?数据的查找

3、、维护便利吗? 你觉得在数据的管理和使用有哪些关键问题需要解决?,数据库的地位,数据库的地位,数据库的地位,数据库的地位,数据库的地位,数据库的地位,数据库的地位,数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。 数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。 数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。,本课程主要内容,本课程要回答的问题: 如何才能高效地组织存储数据? 怎样定义数据库? 怎样使用数据库,从中查找出有用的信息? 怎样管理数据库,进行数据的维护? 怎样设计数据库的结构? 怎样

4、保护数据库的安全性和完整性? 怎样处理数据库日常使用中的故障? 当有多个用户同时访问数据库时,怎样保证数据的完整性。 以及与上述问题相关的理论知识,数据库原理及应用 An Introduction to Database Systems第0章 SQL Server,数据,85,“天山童姥”,一张jpg的照片,一段wmi的声音,一段存储在电脑里的电影片断 数据(Data)的定义:描述事物的符号记录 数据的种类 文本、图形、图像、音频、视频、学生的档案记录、货物的运输情况等 数据是数据库中存储的基本对象,数据的语义,数据的含义称为数据的语义,数据与其语义是不可分的93是一个数据 语义1:学生某门课

5、的成绩 语义2:某人的体重 语义3:计算机系2003级学生人数 语义4:请同学给出。,数据的语义,学生档案中的学生记录 (李明,男,197205,江苏南京市,计算机系,1990) 语义:学生姓名、性别、出生年月、籍贯、所在院系、入学时间 解释:李明是个大学生,1972年5月出生,江苏南京市人,1990年考入计算机系 请给出另一个解释和语义,你觉得如何才能很好地组织数据,以便能快速的查询他们?,关系模型,关系模型将数据组织成表格的形式,这种表格在数学上称为关系。 下面是一个学生表,多个表以及它们之间的联系,就构成了数据库,例如: “学生选课”数据库,一个简单的教务管理系统数据库,关系数据结构,包

6、括以下一些主要概念和定义: 基本表结构 关键字 关系 索引,基本表结构,表(Table):关系模型的数据结构单一,采用二维表结构来表示实体和实体之间的关系。一个关系对应于一张二维表。 属性(Attribute):表中每一列(也称字段、数据项)描述实体集的某个特征,在关系数据库中被称为属性;每一个属性都有自己的取值范围,称为域。 元组(Tuple):表中的每一行由一个实体的相关属性取值构成,称为元组,它相对完整地描述了一个实体。一个元组在关系数据库中也被称为一条记录。元组中的一个属性值称为分量。,【例1】优异生表,记录,属性 (字段),分量,注意:关系是二维表格,但这个二维表格是有限制的: 1)

7、表中的每一属性必须是基本数据类型,结构或数组就不能作为属性的类型。 2)表中的每一列的所有值必须是同类型、同语义的。 3)属性的值只能是域中的值。 4)表中的每一列都必须有唯一的名字,但不同的属性可以出自相同的域。列在表中的顺序可以任意交换。 5)表中任意两个元组的值不能完全相同,即不允许有重复的行,行在表中的顺序无关紧要。 6)表中的每一个分量必须是不可分的数据项,不允许出现“表中有表”的现象。,【例2】一个表中不同的属性具有相同域。,【例3】表中每一个分量都是不可分的数据项。不可出现“表中有表”的现象。,兼职/职业教师,工人,辅导员,作家,关键字(码),码是可以唯一决定一条记录的属性或属性

8、组。 候选关键字(Candidate Key):也称候选码,是关系表中按应用语义能唯一标志元组的最小属性的集合。在最简单的情况下,候选关键字只包含一个属性。在最极端的情况下,关系模式的所有属性组是这个关系模式的候选关键字,称为全码。 主关键字(Primary Key):也称主键,用户指定的用来在关系表中唯一标志元组的一个候选关键字。若一个关系有多个候选关键字,则只选定其中一个为主关键字。主关键字不能为空。,【例4】主关键字的唯一性语义:学生表的主关键字的选择。,【例5】主关键字可以是一个属性组:选课表的主关键字选择。,如果不允许表中出现姓名相同的学生,则该表中“学号”和“姓名”都是候选关键字,

9、主关键字可以选定“学号”或“姓名”,如果允许表中出现姓名相同的学生,则“姓名”不能作候选关键字,主关键字只能是“学号”。,主关键字只能是“学号”+“课号”。 想一想,如果需要在表中记录补考成绩,关键字如何设置?,表之间的关系,表和表之间的关系通过表的公共属性来实现。 外关键字:为实现表之间的关系,一个表中的主关键字与另一个表中与该主关键字相同的属性建立联系,这个起到联系作用的属性,称为另一个表的外关键字,简称外键,外码。 主表和外表:当两个表关联后,公共属性作为主关键字所在的表称为主表,另一个表称为外表。,在两个表之间建立关系的一般原则: 1)两个表具有能体现实体实际存在关系的公共属性。 2)

10、该公共属性在其中一个表中是主关键字。,【例6】学生表和班级表之间的关系。,主表,外表,【例7】学生表和优异生表之间的关系。,主表,外表,教务管理系统数据库的表关系分析,如何防止错误数据进入数据库?,关系完整性约束,域完整性规则 实体完整性规则 参照完整性规则,域完整性,域完整性规定了属性的值必须是属性值域中的值。域完整性又称为用户自定义完整性。它是在关系数据模型定义时,由用户对属性列值的数据类型、长度、单位、精度、格式、值域范围、是否允许为“空值”等进行限定。,所谓“空值”就是“不知道”或“无意义”的值。应当注意,空值不等于数值零,也不等于空字符或空字符串,因为没有成绩与成绩为零分显然是不同的

11、。,【例8】表的域完整性规则应用。,35,实体完整性,实体完整性是指关系中的元组在组成主关键字的属性上不能有空值且主关键字的值不能相同。 要注意实体完整性规则是针对基本关系表而言的。实体完整性主要是为了保障主关键字能唯一标识关系中的每个记录。 大多数关系数据库都支持实体完整性检查,如果表中定义了主关键字,系统将进行强制检查。,【例9】表的实体完整性规则应用。,学生表中,“学号”是主关键字。假定向学生表新加一条学生“王秋水”的记录,系统拒绝该记录的添加,因为它违反了实体 完整性规则,即学生表中已存在一条主关键字取 值为“06102102”的记录。,参照完整性,参照完整性要求一个外表的外关键字的取

12、值必须是其主表主关键字的存在值或空值。,【例10】表的参照完整性规则应用。,在学生表和班级表建立关系后,学生表中“班号”的取值必须是空值或在班级表中“班号”属性中出现过的值。 如果学生表的班号字段允许为空,它取空值表示该学生还没有确定班级; 否则只能取班级表出现过的班号值,即班级表中有该班级的记录。,对数据库进行修改时,可能会破坏表之间的参照完整性,所以为了保证数据库中的数据的完整性,应该对数据库的修改加以限制,这些限制包括:插入约束、删除约束和更新约束。 1)插入约束:当在外表中插入新记录时,必须保证其中的外关键字值在主表中出现过。,【例11】表的参照完整性的插入约束。向学生表中添 加一条学

13、生“王秋水”的记录,插入约束会拒绝该记录的添加,因为班级表中不存在“班号”是“091021”的班级,该记录违反了参照完整性规则。,2)删除约束:当要从主表中删除一条记录时,必须考虑外表数据的完整性。一般有两种约束。 限制删除,即如果系统检查该记录的主关键字值在某个外表中出现过,则不允许删除。 级联删除,即如果系统检查该记录的主关键字值在某个外表中出现过,则在删除主表中该记录的同时,将外表中与主关键字值对应的记录全部删除。,【例12】表的参照完整性的删除约束。删除班级表 中“班号”是“061021”的记录,1.限制删除:不允许删除; 2.级联删除:同时删除学生表所有中”061021”班的学生。,3)更新约束:如果要修改主表中的主关键字值,必须考虑外表数据的一致性。一般有两种约束。 限制更新,即如果系统检查该记录主关键字值在某个外表中出现过,则不允许更新。 级联更新,即如果系统检查该记录主关键字值在某个外表中出现过,则在更新主表中该记录的同时,将外表中与主关键字值对应的记录的外关键字值全部更新。,【例13】 表的参照完整性的更新约束。欲将班级表 中“班号”是“061021”的记录的班号更改为“061028”,1.限制更新:不允许更新; 2.级联更新:同时更新学生表所有中“061021”为“061028”。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号