西南交大数据库原理复习资料(共9页)

上传人:cl****1 文档编号:512960034 上传时间:2023-04-08 格式:DOC 页数:9 大小:443KB
返回 下载 相关 举报
西南交大数据库原理复习资料(共9页)_第1页
第1页 / 共9页
西南交大数据库原理复习资料(共9页)_第2页
第2页 / 共9页
西南交大数据库原理复习资料(共9页)_第3页
第3页 / 共9页
西南交大数据库原理复习资料(共9页)_第4页
第4页 / 共9页
西南交大数据库原理复习资料(共9页)_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《西南交大数据库原理复习资料(共9页)》由会员分享,可在线阅读,更多相关《西南交大数据库原理复习资料(共9页)(9页珍藏版)》请在金锄头文库上搜索。

1、数据库原理部分第一章 数据库系统概述1.数据:是记录下来的可以鉴别的符号。描述事物的符号记录称为数据。2.数据库:是长期储存在计算机内、有组织的、可共享的大量数据的集合。优点:(1)数据按一定的数据模型组织、描述和储存(数据结构化) (2)具有较小冗余度(3)较高数据独立性。(4)易扩展性(5)可为各种用户共享。3.数据库系统:是指在计算机系统中引入数据库后的系统。组成:一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。4.DBMS:数据库管理系统是位于用户与操作系统之间的一层数据管理软件。其基本功能:(1)数据的定义功能 (2)数据组织、存储和管理(3)数据操纵功能(

2、4)数据库的事务管理和运行管理(5)数据库的建立和维护功能(6)其他功能:包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据的重组织功能和性能监视、分析功能。5.数据模型:是一种模型,是对现实世界数据特征的抽象。 组成要素:数据结构,数据操作,数据的完整性约束条件分为(1)概念模型(2)逻辑模型和物理模型常用逻辑数据模型有:层次模型,关系模型,网络模型6.概念模型:也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。7.实体:客观存在并可相互区别的事物称为实体。码:唯一标识实体的属性集称为码主码:若一个关系中有多个候选码,则选定其中一个为主码。(若关系中的某一属

3、性组能唯一地标识一个元组,则称该属性组为候选码)8.实体型之间的联系分类:(1)一对一联系(1:1)(2)一对多联系(1:n)(3)多对多联系(m:n)9.构建ER模型(综合运用)实体型矩形,属性椭圆,联系菱形10.关系模型:资料(数据)以“关系”的形式表示,也就是以二维表的形式表示,其数据模型就是所谓的关系模型。在关系模型中,无论是从客观事物中抽象出的实体,还是实体之间的联系,都用单一的结构类型一一关系来表示。11.关系数据库系统:就是以关系模型为基础的数据库系统。第二章 关系数据库12.关系模型的组成:见1413.关系模型是关系数据库系统的基础模型。14.关系模型由关系数据结构、关系操作和

4、完整性约束三部分组成。 15.关系的类型:基本关系(又称基本表或基表),查询表和视图表。基本关系的性质: 列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。 不同的列可以出自同一域,称其中的每一列为一个属性,不同的属性要给予不同的属性名。 列的顺序无所谓,即列的次序可以任意交换。 任意两个元组的候选码不能完全相同。 行的顺序无所谓,即行的次序可以任意交换。 分量必须取原子性,即每一列值都必须是不可分的数据项。16.关系的完整性规则是对关系的某种约束条件。17实体完整性、参照完整性是关系模型必须满足的完整性约束条件,被称为是关系的两个不变性,应该由关系系统自动支持。用户定义的完整性是应

5、用领域需要遵循的约束条件,体现了具体领域中的语义约束。18. 三个完整性约束的含义(1)实体完整性:若属性(指一个或一组属性)A是基本关系R的主属性,则A不能取空值。(2)参照完整性:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码K相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:1或者取空值(F的每个属性值均为空值)2或者等于S中某个元组的主码值。(3)用户定义的完整性:用户定义的完整性就是针对某一具体关系数据库的约束条件。第三章 关系数据库标准语言SQL19.SQL的概念:即结构化查询语言,是关系数据库的标准语言,SQL是一个通用的、功能极强的关

6、系数据库语言。特点: 综合统一 高度非过程化 面向集合点的操作方式 以同一种语法结构提供多种使用方式 语言简洁,易学易懂20.索引的作用:加快查询速度21.数据定义语言(综合运用)1) 定义基本表 CREATE TABLE CREATE TABLE ( 列级完整性约束条件 , 列级完整性约束条件 ,);建表时可定义完整性约束条件,当用户操作表中数据时系统自动检查该操作是否违背这些完整性约束条件。如果完整性约束条件涉及多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。定义表的各个属性时需要指明其数据类型及长度。2) 修改基本表 ALTER TABLEALTER TABLE A

7、DD 完整性约束 DROP ALTER COLUMN ;ADD子句用于增加新列和新的完整性约束条件,DROP子句用于删除指定的完整性约束条件,ALTER COLUMN子句用于修改原有的列定义,包括列名和数据类型。3) 删除基本表 DROP TABLEDROP TABLE RESTRICT/CASCADE 若选RESTRICT则表的删除是有限制条件,缺省为RESTRICT若选 CASCADE则该表的删除没有限制条件。4) 建立索引 CREATE INDEX用户可以根据应用环境的需要,在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。系统在存取数据时会自动选择合适的索引作为存取路径,

8、用户不必也不能选择索引。CREATE UNIQUE CLUSTER INDEX ON ( ,.); 索引可以建在表的一列或多列上。可在每个后面指定索引值的排列次序。ASC表示升序,DESC表示降序,缺省值为ASC。UNIQUE表明此索引的每一个索引值只对应唯一的数据记录。CLUSTER表示建聚簇索引。所谓聚簇索引是指索引项的顺序与表中记录的物理顺序一致的索引组织。用户可以在最常查询的列上建立聚簇索引以提高查询效率。显然在一个基本表上最多只能建立一个聚簇索引。建立聚族索引后,更新索引列数据时,往往导致表中记录的物理顺序的变更,代价较大,因此对于经常更新的列不宜建立聚簇索引。5) 删除索引 DRO

9、P INDEX22.数据查询语言(综合运用)1) SELECTSELECT ALL|DISTINCT, FROM , . WHERE GROUP BY HAVING ORDER BY ASC|DESC;SELECT语句的含义:根据WHERE子句的条件表达式,从FROM子句指定的基本表或视图中找出满足条件的元组,再按SELECT子句中的目标列表达式,选出元组中的属性值形成结果表。如果有GROUP子句,则将结果按的值进行分组,该属性列值相等的元组为一个组。通常会在每组中作用聚集函数。如果GROUP子句带HAVING短语,则只有满足指定条件的组才予输出。如果有ORDER BY子句,则结果表还要按的值

10、的升序或降序排序。A 单表查询 (1) 查询指定列 例1 查询全体学生的学号与姓名 SELECT Sno,Sname FROM Student; (2) 查询全部列 例3 查询全体学生的详细记录 SELECT * FROM Student;(3) 消除取值重复的行 指定DISTINCT可掉重复行:SELECT DISTINCT Sno FROM SC;(4) 查询满足条件的元组 查询满足指定条件的元组可以通过WHERE子句实现。WHERE子句常用的查询条件如表 谓词LIKE可用来进行字符串的匹配。其语法格式如下: NOT LIKE ESCAPE 其含义是查找指定的属性列值与相匹配的元组。可以是

11、一个完整的字符串,也可以含有通配符%和_。 %(百分号) 代表任意长度(长度可以为0)的字符串。 _(下横线) 代表任意单个字符。 例14 查所有姓刘的学生的姓名、学号和性别 SELECT Sname, Sno, SsexFROM Student WHERE Sname LIKE 刘%; 如果用户要查询的匹配字符串本身就含有 % 或 _ ,这时就要使用 ESCAPE 短语对通配符进行转义了。 (5) 对查询结果排序 ORDER BY (ASC、DESC)例23 查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列 SELECT Sno, Grade FROM SC WHERE Cn

12、o=3 ORDER BY Grade DESC; (6) 使用集函数 COUNT(DISTINCT|ALL *) 统计元组个数 COUNT(DISTINCT|ALL ) 统计一列中值的个数 SUM(DISTINCT|ALL ) 计算一列值的总和 AVG(DISTINCT|ALL ) 计算一列值的平均值 MAX(DISTINCT|ALL ) 求一列值中的最大值 MIN(DISTINCT|ALL ) 求一列值中的最小值 例28 查询学习1号课程的学生最高分数 SELECT MAX(Grade)FROM SC WHERE Cno=1; (7) 对查询结果分组 GROUP BY子句可以将查询结果表的各

13、行按一列或多列,将值相等的作为一组。 例29 查询各个课程号与相应的选课人数 SELECT Cno, COUNT(Sno) FROM SC GROUP BY Cno; 该SELECT语句对SC表按Cno的取值进行分组,所有具有相同Cno值的元组为一组,然后对每一组作用集函数COUNT以求得该组的学生人数。如果分组后还要求按一定的条件对这些组进行筛选条,最终只输出满足指定的组,则可以使用HAVING短语指定筛选条件。例31 查询选修了3门以上课程的学生学号。 SELECT Sno FROM SC GROUP BY Sno HAVING COUNT(*)3; 这里先用GROPU BY子句按Sno进行分组,再用集函数COUNT对每一组计数。HAVING短语指定选择组的条件,只有满足条件的组才会被选出来。 WHERE子句与HAVING短语的区别在于作用对象不同。WHERE子句作用于基本表或视图,从中选择满足条件的元组。HAVING短语作用于组,从中选择满足条件的组。2) 连接查询 若一个查询同时涉及两个以上的表,则称之为连接查询。连接查询主要包括等值连接、非等值连接查询、自身连接

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

当前位置:首页 > 建筑/环境 > 施工组织

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