数据库系统-PPT课件.ppt

上传人(卖家):三亚风情 文档编号:2729619 上传时间:2022-05-22 格式:PPT 页数:36 大小:120KB
下载 相关 举报
数据库系统-PPT课件.ppt_第1页
第1页 / 共36页
数据库系统-PPT课件.ppt_第2页
第2页 / 共36页
数据库系统-PPT课件.ppt_第3页
第3页 / 共36页
数据库系统-PPT课件.ppt_第4页
第4页 / 共36页
数据库系统-PPT课件.ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、1第1章 绪论o 基本概念n 数据库(Database,DB):长期储存在计算机内、有组织的、可共享的数据集合。n 数据库管理系统(Database Management System,DBMS):是位于用户与操作系统之间的一层数据管理软件。常用的大型数据库管理系统包括DB2、SQL SERVER、Oracle、Sybase、Informix等。2第1章 绪论o 数据管理经历了人工管理、文件系统、数据库系统 、高级数据库技术管理四个阶段。o 采用数据库技术管理数据具有如下特点:o (1) 采用一定的数据模型实现数据结构化;o (2) 程序与数据具有较高的独立性;o (3) 控制数据冗余;o (

2、4) 支持数据共享;o (5) 数据安全性较高。3第1章 绪论o 数据的逻辑独立性:当数据的整体逻辑结构改变时,通过系统内部的自动映像或转换功能,保持了数据的局部逻辑结构不变。o 视图能够实现数据的逻辑独立性。o 数据的物理独立性:当数据的存储结构改变时,通过系统内部的自动映像或转换功能,保持了数据的逻辑结构不变。4第1章 绪论o数据模型:是现实世界数据特征的抽象。o概念数据模型:按用户的观点对数据和信息建模。如:实体联系模型 o逻辑数据模型:按计算机系统的观点对数据建模。如:层次模型,网状模型,关系模型5o 数据仓库o 数据仓库是一个面向主题的、集成的、不可更新的、随时间不断变化的数据集合,

3、用以支持企业或组织的决策分析处理。o 数据挖掘就是从大量数据中提取或“挖掘”知识,可以支持人们进行决策。o 数据仓库是一种语义上一致的数据存储,它充当决策支持数据模型的物理实现,并存放企业战略决策所需信息。数据仓库开始时主要用于信息处理,而后用于分析处理,最后可用于数据挖掘,因此数据挖掘可看作数据仓库的高层次应用;但数据挖掘不限于分析数据仓库中的数据,它可以分析现存的、比数据仓库提供的汇总数据粒度更细的数据,也可以分析事务的、文本的、空间的和多媒体数据。第1章 绪论6o 关系模型:用二维表的形式表示实体和实体间联系的数据模型o 关系模型符合1NF。o 第一范式(1NF)是指数据库表的每一列都是

4、不可分割的基本数据项。 第2章 关系模型7第2章 关系模型o 超键(Superkey):在一个关系中,能唯一标识元组的属性集。o 键Key(候选键candidate key):一个属性集能惟一标识元组,又不含有多余属性。o 主键(primary key):关系模式中用户正在使用的候选键称主键。用作主键的列不可以为NULL,在行记录中不可以重复,可以将几个列合并起来用作主键。o 外键(Foreign Key):是指关系R中的一组属性A不是关系R的主键,但A是另一个关系S的主键,则属性组A就是关系R的外键。 8第2章 关系模型o 数据完整性:是指保护数据库中数据的正确性、有效性和相容性,防止不合语

5、义的数据进入数据库。o 实体完整性:主键(PRIMARY KEY) o 参照完整性:外键(FOREIGN KEY) o 用户定义的完整性:check 、触发器o 在数据库系统中,数据完整性约束的建立需要通过数据库管理系统提供的数据定义语言来实现。9o 关系代数:用关系的运算来表达查询要求的方式。o 并o 差 o 交o 广义笛卡尔积o 投影:是从关系R中选择出若干属性列组成新的关系。o 选择:在关系R中选择满足给定条件的元组。o 连接:从两个关系的笛卡儿积中选取属性间满足一定条件的元组。o 并、差、投影、广义笛卡儿积和选择五种运算为基本运算。10第3章结构化查询语言SQLo SQL(Struct

6、ured Query Language)是结构化查询语言,包括查询、定义、操纵和控制四个部分,是一种功能齐全的数据库语言。目前已成为关系数据库的标准语言。SQL功能关键动词数据查询数据查询DQL(Data Query Language )SELECT数据定义数据定义DDL(Data Definition Language) CREATE, DROP, ALTER数据操纵数据操纵DML(Data Manipulation Language)INSERT, UPDATE, DELETE数据控制数据控制DCL(Data Control Language )GRANT, REVOKE11第3章结构化查

7、询语言SQLo 1.定义基本表 o CREATE TABLE ( 列级完整性约束条 件 , 列 级 完 整 性 约 束 条件.),;o 设有一个关系数据库,有三个基本表,表结构如下:o STUDENT ( 学号 姓名 年龄 性别 学院号 )、o SC(学号 课程号 成绩)、o COURSE (课程号 课程名 学时数 课程类型)o 创建COURSE表的SQL语句 o Create Table COURSE(课程号 char(6) not null primary key,课程名 char(30),学时数 smallint,课程类型char(10) 12第3章结构化查询语言SQLo 删除基本表的命

8、令 o DROPTABLE o DROPTABLE COURSE 13第3章结构化查询语言SQLo 查询o SELECT ALL|DISTINCT,. FROM , . WHERE GROUP BY HAVING ORDER BY ASC|DESC;o GROUP:将结果按的值进行分组,该属性列值相等的元组为一个组,每个组产生结果表中的一条记录。o 如果GROUP子句带HAVING短语,则只有满足指定条件的组才予输出。o 如果有ORDER子句,则结果表还要按的值的升序或降序排序。14第3章结构化查询语言SQLo 使用聚合函数o COUNT(DISTINCT|ALL *) 统计元组个数 o CO

9、UNT(DISTINCT|ALL ) 统计一列中值的个数 o SUM(DISTINCT|ALL ) 计算一列值的总和 o AVG(DISTINCT|ALL ) 计算一列值的平均值o MAX(DISTINCT|ALL ) 求一列值中的最大值 o MIN(DISTINCT|ALL ) 求一列值中的最小值15第3章结构化查询语言SQLo 谓词LIKE可用来进行字符串的匹配。语法格式: o NOT LIKE ESCAPE o 含义是查找指定的属性列值与相匹配的元组。o %(百分号) 代表任意长度(长度可以为0)的字符串。o _(下横线) 代表任意单个字符。 16第3章结构化查询语言SQLo例:下面哪一

10、个语句能查找名称以“book”字符串结尾的出版社?oA. Select pub_name from publishers where pub_name like _book oB. Select pub_name from publishers where pub_name like %bookoC. Select pub_name from publishers where pub_name like book oD. Select pub_name from publishers where pub_name like book 17第3章结构化查询语言SQLo 设有一个数据库Librar

11、y,包括Book,Borrow,Reader三个关系模式:o Book(Bno,Btitle,Bauthor,Bprice);o Borrow(Rno,Bno,BorrowDate,ReturnDate);o Reader(Rno,Rname,Rsex,Rage,Reducation);o 写出实现下列操作的SQL语句。o 查询所有年龄在1830岁(包括18岁和30岁)之间的读者姓名(Rname)及年龄(Rage)。o Select Rname, Rage from Reader where Rage between 18 and 3018第3章结构化查询语言SQLo Book(Bno,Bti

12、tle,Bauthor,Bprice);o Borrow(Rno,Bno,BorrowDate,ReturnDate);o Reader(Rno,Rname,Rsex,Rage,Reducation, Email);查询所有姓张的且全名为2个汉字的读者的姓名(Rname)和性别(Rsex) 。o Select Rname,Rsex from Reader where Rname like 张_ 19第3章结构化查询语言SQLo Book(Bno,Btitle,Bauthor,Bprice);o Borrow(Rno,Bno,BorrowDate,ReturnDate);o Reader(Rno

13、,Rname,Rsex,Rage,Reducation);o 查询所有的借阅记录,按照读者编号(Rno)升序排列,读者编号相同的,按照借阅时间(BorrowDate)降序排列。o Select Rno,Bno,BorrowDate,ReturnDate from Borrow order by Rno asc, BorrowDate desc 20第3章结构化查询语言SQLo Book(Bno,Btitle,Bauthor,Bprice);o Borrow(Rno,Bno,BorrowDate,ReturnDate);o Reader(Rno,Rname,Rsex,Rage,Reducatio

14、n);o 查询比编号为B02的图书的价格高的图书的编号(Bno)、书名(Btitle)和价格(Bprice)。o Select Bno, Btitle, Bprice from book where Bprice(select Bprice from book where Bno=B02 ) 21Book(BnoBook(Bno,BtitleBtitle,BauthorBauthor,Bprice)Bprice);Borrow(RnoBorrow(Rno,BnoBno,BorrowDateBorrowDate,ReturnDate)ReturnDate);Reader(RnoReader(Rn

15、o,RnameRname,RsexRsex,RageRage,Reducation)Reducation);基本表的修改 o ALTER TABLE ADD 完整性约束o DROP 完整性约束名 DROP COLUMN o ALTER COLUMN ;例:修改读者表Reader中Rname列;把Rname列修改成下列定义:数据类型:Char;长度:10;允许空否:NULL;Alter Table Reader Alter Column Rname Char(10) Null22第3章结构化查询语言SQLo 数据库的安全性控制是指保护数据以防止未经授权或不合法的使用造成的数据泄露、更改或破坏。o

16、 保证数据库系统的安全性措施:o 1)用户标识和身份鉴定;o 2)存取控制;o 3)定义视图;o 4)审计;o 5)数据加密。23第3章结构化查询语言SQLo 一、授权o grant 表级权限 on 表名 | 视图名 to 用户 ,用户 | public with grant optionwith grant option表示获得权限的用户可以把权限再授予其它用户o 回收权限o revoke 表级权限 on 表名 | 视图名 from 用户 ,用户 | public例:收回用户PENG对学生表(STUDENT)中学号(XH)的修改权:o REVOKE UPDATE ( XH ) ON STUD

17、ENT FROM PENG24第3章结构化查询语言SQLo视图是从一个或几个基本表(或视图)导出的表,它是一个虚表,只存放视图的定义,而不存放视图对应的数据。o优点:o1)简化用户的操作;o2)使用户能从多种角度看待同一数据;o3)对重构数据库提供了一定程度的逻辑独立性;o4)能够对机密数据提供安全保护。o如:要使用户张先生只能查询表A中的部分记录 ,可以构建该部分记录的行级视图,并将该视图的查询权限赋予张先生 25第3章结构化查询语言SQLo 1、定义视图 o CREATEVIEW视图名称(属性名1,属性名2,)ASSELECT查询模块 WITHCHECKOPTION;o STUDENT (

18、 学号 姓名 年龄 性别 学院号 )、o SC(学号 课程号 成绩)、o COURSE (课程号 课程名 学时数 课程类型)o 创建一个视图MyView,查询课程类型为选修课程学生的学院号 、学号、姓名 o Create View MyView ASo Select STUDENT.学院号 , STUDENT.学号, STUDENT.姓名 from STUDENT, SC where STUDENT.学号=SC.学号 and SC.课程号 IN (Select COURSE.课程号 from COURSE where COURSE.课程类型= 选修课程)26o 游标o 游标是系统为用户开设的一

19、个数据缓冲区,存放SQL语句的执行结果,用户可以用SQL语句逐一从游标中获取记录,并赋值给主变量,交由主语言进一步处理。第3章结构化查询语言SQL27o 存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数来执行它。存储过程有以下的优点:o 重复使用。o 提高性能。存储过程在创建的时候就进行了编译,将来使用的时候不用再重新编译。o 减少网络流量。存储过程位于服务器上,调用的时候只需要传递存储过程的名称以及参数就可以了,因此降低了网络传输的数据量。o 安全性。参数化的存储过程可以防止SQL注入式的攻击,而且可以将Grant、Deny以及Rev

20、oke权限应用于存储过程。 第3章结构化查询语言SQL28第4章并发控制o日志文件是用来记录事务对数据库的更新操作的文件,在数据库恢复中其着非常重要的作用,可以用来进行事务故障恢复和系统故障恢复,并协助后备副本进行介质恢复。29第4章并发控制o 并发控制o 为了充分利用数据库资源,发挥数据库共享资源的特点,应该允许多个用户并行地存取数据库,但会产生多个用户并发存取同一数据的情况,需要对并发操作进行控制,以防止数据库的不一致性。o 并发控制机制的好坏是衡量数据库管理系统性能的重要标志之一。并发控制是以事务为单位进行的。o 封锁技术 (Locking)是并发控制的主要技术o 死锁:在数据库并发控制

21、中,两个或多个事务处于等待状态。 30第4章并发控制o事务是数据库的逻辑工作单位,是用户定义的一组操作序列。在关系数据库中,一个事务可以是一组SQL语句或整个程序。事务通常是以BEGIN TRANSACTION开始,以COMMIT或ROLLBACK结束。事务应具有原子性、一致性、隔离性和持续性。 o原子性:事务必须是原子工作单元,对于其数据操作,要么全都执行,要么全都不执行。o一致性:事务的执行结果必须使数据库从一个一致性状态变到另一个一致性状态。o隔离性:一个事务的执行不能被其它事务干扰。 o持续性(持久性):一旦事务成功提交,其对数据库的更新操作将永久有效,即使数据库发生故障。31第4章并

22、发控制o 并发操作引起的异常:o 丢失更新(Lost Update)o 未提交读(Uncommitted read),也称为“脏读” o 不可重复读(Nonrepeatable read)o 幻象读(Phantom read)32o 数据库运行中可能产生三种故障:o 事务故障:违反完整性约束引起事务夭折;o 系统故障:软硬件错误断电引起事务夭折;o 介质故障:磁盘损坏部分或全部数据丢失。o 事务故障和系统故障影响事务的正常执行,介质故障破坏数据库数据。 第4章并发控制33第章数据库设计o 数据库设计o 数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够

23、有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。34数据库设计的基本步骤需求收集和分析设计概念结构设计逻辑结构数据模型优化设计物理结构设计评价,性能预测物理实现试验性运行使用、维护数据库需求分析阶段需求分析阶段概念设计阶段概念设计阶段逻辑设计阶段逻辑设计阶段物理设计阶段物理设计阶段数据库实施阶段数据库实施阶段数据库运行维护阶段数据库运行维护阶段应用需求(数据、处理)转换规则、DBMS功能、优化方法应用要求DBMS详细特征不满意不满意需求文档数据字典数据流图等用E-R图描述的概念模型某种数据模型并优化存储安排方法选择存取路径建立编写模式数据装入数据库试运行性能检测、转储/恢复数据库

24、重组和重构过程迭代、逐步求精的设计思想35第章数据库设计o数据字典:数据字典是结构化设计方法的一个工具,它用于对系统中的各类数据进行详尽的描述,是对各类数据描述的集合,它通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。 o需求分析可按以下步骤进行:n调查组织机构情况,了解该组织的部分组成情况、各部门的职责等,为分析信息流作准备。n调查各部门的业务活动情况,包括了解各部门输入和使用什么数据、如何加工和处理这些数据、输出什么信息、输出到什么部门、输出格式如何等。n在上述工作基础上,协助用户明确对新系统的各种要求,包括信息存储要求、信息处理要求、安全性和完整性要求等。n确定系统的边界,哪些由计算机完成、哪些由人工完成等。36第章数据库设计o 数据库维护工作包括:n 数据库的转储和恢复。 n 对数据库的安全性和完整性进行控制。 n 对数据库的性能进行监督、分析和改造。 n 对数据库进行重组织和重构造。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(数据库系统-PPT课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|