数据库技术与应用(SQLServer)课件.ppt

上传人:牧羊曲112 文档编号:6578521 上传时间:2023-11-14 格式:PPT 页数:127 大小:1.98MB
返回 下载 相关 举报
数据库技术与应用(SQLServer)课件.ppt_第1页
第1页 / 共127页
数据库技术与应用(SQLServer)课件.ppt_第2页
第2页 / 共127页
数据库技术与应用(SQLServer)课件.ppt_第3页
第3页 / 共127页
数据库技术与应用(SQLServer)课件.ppt_第4页
第4页 / 共127页
数据库技术与应用(SQLServer)课件.ppt_第5页
第5页 / 共127页
点击查看更多>>
资源描述

《数据库技术与应用(SQLServer)课件.ppt》由会员分享,可在线阅读,更多相关《数据库技术与应用(SQLServer)课件.ppt(127页珍藏版)》请在三一办公上搜索。

1、数据库技术及应用,教材及参考书目,教材:数据库技术与应用(SQL Server)顾兵,清华大学出版社 参考书:1Database System Concepts,Abraham Silberschats,机械工业出版社。2数据库系统概论,王珊、萨斯萱编,高等教育出版社。,上机软件:Microsoft SQL Server 2005,成绩计算,平时成绩:30%平时成绩=考勤10%+作业10%+实验报告10%期末成绩:70%,第1章 数据库系统概论,本章主要内容,重点难点,数据模型中的实体联系模型(ER模型)关系模型与关系代数,一、基本概念,数据和信息数据处理与数据管理数据库(DB)数据库管理系统

2、(DBMS)数据库系统(DBS),数据与信息,数据数据的定义 描述事物的符号记录数据的种类 文本、图形、图像、音频、视频等信息与数据之间存在着固有的联系:数据是信息的符号表示或称为载体;信息则是数据的内涵,是对数据语义的解释。,数据举例,例如:93是一个数据语义1:学生某门课的成绩语义2:某人的体重语义3:计算机系2003级学生人数语义4:。,数据举例,学生档案中的学生记录(李明,男,197205,江苏南京市,计算机系,1990)语义:学生姓名、性别、出生年月、籍贯、所在院系、入学时间 解释:李明是个男学生,1972年5月出生,江苏南京市人,1990年考入计算机系,数据处理与数据管理,数据处理

3、是指从某些已知的数据出发,推导加工出一些新的数据,这些新的数据又表示了新的信息。数据管理是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。数据处理是与数据管理相联系的,数据管理技术的优劣,将直接影响数据处理的效率,数据库,DataBase,简称DB:是长期存储在计算机内、有组织的、统一管理的相互关联的数据集合。数据库具有以下特点:数据库可由人工或计算机建立、维护与使用。数据库是具有逻辑关系和确定意义的数据集合。可为各种用户共享,具有较小冗余度、数据间联系紧密而又有较高的数据独立性。针对明确应用目标设计、建立

4、和加载表现了现实世界的某些方面。,数据库管理系统,Database Management System,简称为DBMS。是位于用户与操作系统(OS)之间的一层数据管理软件,它为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。,数据库管理系统主要功能,数据定义功能提供数据定义语言(DDL)定义数据库中的数据对象 数据组织、存储和管理分类组织、存储和管理各种数据确定组织数据的文件结构和存取方式实现数据之间的联系提供多种存取方法提高存取效率,数据库管理系统主要功能,数据操纵功能提供数据操纵语言(DML)实现对数据库的基本操作(查询、插入、删除和修改)数据库的事务管理和运行

5、管理数据库在建立、运行和维护时由DBMS统一管理和控制保证数据的安全性、完整性、多用户对数据的并发使用发生故障后的系统恢复,数据库管理系统主要功能,数据库的建立和维护功能(实用程序)数据库初始数据装载转换数据库转储介质故障恢复数据库的重组织性能监视分析等 其它功能DBMS与网络中其它软件系统的通信两个DBMS系统的数据转换异构数据库之间的互访和互操作,数据库系统,DataBase System,简称为DBS:是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统,即它是采用数据库技术的以某一应用领域为应用背景的计算机系统。数据库系统的构成:数据库数据库管理

6、系统(及其开发工具)应用系统程序数据库管理员和用户,数据库系统示意图,应用程序,开发工具,数据库管理系统(DBMS),操作系统,数据库管理员,数据库,用户,用户,二、数据库技术的发展,数据库技术的定义:是由于数据管理任务的需要而产生、用于研究数据库的结构、存储、设计、管理和使用的一门软件学科。在应用需求的推动下,在计算机硬件技术、软件技术快速发展的基础上,数据管理技术的发展经历了人工管理、文件系统、数据库系统3个阶段。,1.人工管理阶段,时期 20世纪40年代中-50年代中特点 数据的管理者:用户(程序员),数据不保存在计算机内 数据面向的对象:某一应用程序 数据控制能力:应用程序自己控制 数

7、据的共享程度:无共享、冗余度极大 数据的独立性:不独立,完全依赖于程序 数据的结构化:无结构,应用程序与数据的对应关系系(人工管理阶段),2.文件系统阶段,时期:20世纪60年代特点:数据的管理者:文件系统,数据可长期保存数据面向的对象:某一应用程序数据的共享程度:共享性差、冗余度大数据的独立性:独立性差,数据的逻辑结构改变必须修改应用程序数据的结构化:记录内有结构,整体无结构,应用程序与数据的对应关系(文件系统阶段),3.数据库阶段,时间:20世纪60年代末以来特点:数据结构化,即采用数据模型以表示复杂的数据结构数据共享性高、冗余度低、易扩充数据独立性高数据由DBMS统一管理和控制,数据结构

8、化,整体数据的结构化是数据库的主要特征之一整体结构化 不再仅仅针对某一个应用,而是面向全组织 不仅数据内部结构化,整体是结构化的,数据之间具有联系数据库中实现的是数据的真正结构化 数据的结构用数据模型描述,无需程序定义和解释 数据可以变长 数据的最小存取单位是数据项,数据的共享性高,冗余度低,易扩充,数据库系统从整体角度看待和描述数据,数据面向整个系统,可以被多个用户、多个应用共享使用。数据共享的好处 减少数据冗余,节约存储空间 避免数据之间的不相容性与不一致性 使系统易于扩充,数据独立性高,物理独立性 指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的。当数据的物理存储改变了,应用程序

9、不用改变。逻辑独立性 指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,用户程序也可以不变。,数据由DBMS统一管理和控制,DBMS提供的数据控制功能(1)数据的安全性(Security)保护保护数据,以防止不合法的使用造成的数据的泄密和破坏。(2)数据的完整性(Integrity)检查将数据控制在有效的范围内,或保证数据之间满足一定的关系。(3)并发(Concurrency)控制对多用户的并发操作加以控制和协调,防止相互干扰而得到错误的结果。(4)数据库恢复(Recovery)将数据库从错误状态恢复到某一已知的正确状态。,应用程序与数据的对应关系(数据库阶段),三、数据模

10、型,数据模型的有关概念实体-联系模型关系模型,1.关于模型的基本概念,模型(Model):是对现实世界某个对象特征的模拟与抽象。数据模型(Data Model):是对现实世界数据特征的抽象。数据库系统均基于某种数据模型。数据模型是数据库系统的核心与基础。,数据模型的分类,根据数据模型的不同应用目的,可划分为两类:(1)概念数据模型 它是按用户的观点来对数据和信息建模,用于数据库设计。(2)逻辑模型和物理模型逻辑模型主要包括网状模型、层次模型、关系模型、面向对象模型等,按计算机系统的观点对数据建模,用于DBMS实现。物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁

11、带上的存储方式和存取方法。,客观对象的抽象过程-两步抽象现实世界中的客观对象抽象为概念模型;把概念模型转换为某一DBMS支持的数据模型。,2.概念模型的表示方法,概念模型是对信息世界建模。概念模型常用的表示方法:实体-联系方法(Entity-Raletionship Approach)简称E-R模型。E-R模型是用E-R图来描述现实世界的概念模型。,E-R图基本成份,矩形框:用于表示实体类型(考虑问题的对象)。菱形框:用于表示联系类型(实体间联系)。椭圆形框:用于表示实体类型和联系类型的属性。惟一标识实体的属性:加下划线。,概念设计中的数据描述,概念描述:根据用户的需求设计数据库的概念结构,与

12、具体的DBMS无关。实体(entity):客观存在,可以相互区别的事物。实体集(entity set):性质相同的同类实体的集合。属性(attribute):实体每一个特性称为属性。每个属性有一个值域。实体标识符(identifier):能惟一标识实体的属性或属性集,称为实体标识符。也称关键码(key),或简称为键。,数据联系的描述,联系(relationship)是实体之间的相互关系。与一个联系有关的实体集个数,称为联系的元数。联系可用实体所组成的元组表示:(e1,e2,en),当n=2,称为二元联系。,二元联系中实体关系(1),一对一联系:如果实体集E1中每个实体至多和实体集E2中的一个实

13、体有联系,反之亦然,那么实体集E1和E2的联系称为“一对一联系”,记为“1:1”。,E1,E2,二元联系中实体关系(2),一对多联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体间有联系,而E2中每个实体至多和E1中一个实体有联系,那么称E1对E2的联系是“一对多联系”,记为“1:N”。,二元联系中实体关系(3),多对多联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么称E1和E2的联系是“多对多联系”,记为“M:N”。,实体间联系示例,多元联系,两个以上实体型之间一对多联系,多元联系,两个以上实体型间的多对多联系,实例供应商、

14、项目、零件三个实体型一个供应商可以供给多个项目多种零件每个项目可以使用多个供应商供应的零件每种零件可由不同供应商供给,单个实体内的联系,同一实体集内各实体之间也可以存在一对一、一对多、多对多的联系。,ER模型的设计实例,工程管理:根据需要向供应商订购零件,工程项目需要供应商提供零件分析过程:实体类型:零件PART,工程项目PROJECT,零件供应商SUPPLIER。确定联系类型:PROJECT和PART之间是M:N联系,PART和SUPPLIER之间也是M:N联系,分别命名为P_P和P_S.确定实体类型和联系类型的属性。把实体类型和联系类型组合成ER图。确定实体类型的键。,确定属性、键及组合E

15、-R图,用E-R图表示某个工厂物资管理的概念模型实体:仓库:仓库号、面积、电话号码 零件:零件号、名称、规格、单价、描述 供应商:供应商号、姓名、地址、电话号码、帐号 项目:项目号、预算、开工日期 职工:职工号、姓名、年龄、职称说明:(1)一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。用库存量来表示某种零件在某个仓库中的数量。(2)一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作。(3)职工之间具有领导-被领导关系。(4)一个供应商可以供给多个项目多种零件,每个项目可以使用多个供应商供应的零件,每种零件可由不同供应商供给。,3.常用的逻辑数据模型,目前数据库中常用的逻辑数据

16、模型有;层次模型(Hierarchical Model)网状模型(Network Model)关系模型(Relational Model)面向对象模型(Object Oriented Model),关系模型,近三十年来,关系数据库产品占有主导地位。关系数据库系统采用关系模型作为数据的组织方式。关系模型成为目前最重要的数据模型。当前,数据库领域的研究也是以关系方法为基础。,关系模型的数据结构,关系模型由一组关系组成。每个关系的数据结构是一张规范的二维表。,关系模型中的术语,关系(Relation):即所说的规范的二维表。元组(Tuple):表中的一行(一条记录)。属性(Attribute):表中

17、的一列。主关键字(Key):可惟一标识一个元组的属性组。域(Domain):属性的取值范围。分量:元组中的一个属性值。关系模式(Relation Schema):对关系的描述。可表示为:关系名(属性1,属性2,属性3,),例1 定义如下关系模型 学生、系,系与学生之间的一对多联系:学生(学号,姓名,年龄,性别,系号,年级)系(系号,系名,办公地点)例2 定义如下关系模型 系、系主任,系与系主任间的一对一联系 系(系号,系名,办公地点)系主任(系号,姓名),例3定义如下关系模型 学生、课程、学生与课程之间的多对多联系:学生(学号,姓名,年龄,性别,系号,年级)课程(课程号,课程名,学分)选修(学

18、号,课程号,成绩),关系必须是规范化的,满足一定的规范条件 最基本的规范条件:关系的每一个分量必须是一个不可分的数据项,不允许表中还有表下图中工资和扣除是可分的数据项,不符合关系模型要求,术语对比,四、关系模型与关系数据库,采用关系模型作为数据的组织方式的数据库系统称为关系数据库。关系数据库目前仍是数据库应用中的主流技术。,1.关系的数学定义,域(Domain):一组具有相同数据类型的值的集合。例:整数实数介于某个取值范围的整数长度指定长度的字符串集合男,女.,笛卡尔积(Cartesian Product):给定一组域D1,D2,D3,Dn,则这些域的笛卡尔积为:D1D2D3Dn=(d1,d2

19、,d3,dn)|diDj,i=1,2,n 所有域的所有取值的一个组合 不能重复例:D1=导师集合Supervisor=张清玫,刘逸D2=专业集合Speciality=计算机专业,信息专业D3=研究生集合Postgraduate=李勇,刘层,王敏,笛卡尔积,笛卡尔积的表示方法 笛卡尔积可表示为一个二维表 表中的每行对应一个元组,表中的每列对应一个域,元组(Tuple)笛卡尔积中每一个元素(d1,d2,dn)叫作一个n元组(n-tuple)或简称元组(Tuple)(张清玫,计算机专业,李勇)、(张清玫,计算机专业,刘晨)等都是元组分量(Component)笛卡尔积元素(d1,d2,dn)中的每一个

20、值di叫作一个分量 张清玫、计算机专业、李勇、刘晨等都是分量,基数(Cardinal number)若Di(i1,2,n)为有限集,其基数为mi(i1,2,n),则D1D2Dn的基数M为:,思考,关于学生选课,给出3个域:D1:STUDENT=0105,0206,0312 D2:COURSE=COM,MAT,ENG D3:TEACHER=WU,LIU,ZHANG 说出D1,D2,D3这3个域的笛卡尔积的部分内容;说出上述笛卡尔积的基数。,关系(Relation)结构,定义:D1D2Dn的子集称为在域D1、D2、,Dn上的关系,表示为:R(D1,D2,Dn)其中:R:关系名;n:关系的目或度(D

21、egree)。因为关系是笛卡尔积的子集(这一部分元组是有实际意义的),因此关系也是一个二维表。,SAP关系,2.关系代数,关系代数是一种抽象的查询语言,它通过关系的运算来表达查询。关系代数的运算分为:传统的集合运算:并、交、差和笛卡尔积专门的关系运算:选择、投影、连接和除,关系运算符,辅助运算符,传统的集合运算,并(Union)R和S 具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域RS 仍为n目关系,由属于R或属于S的元组组成RS=ttR tS,差(Difference)R和S 具有相同的目n 相应的属性取自同一个域R-S 仍为n目关系,由属于R而不属于S的所有元组组成R-S=

22、ttR tS,交(Intersection)R和S 具有相同的目n 相应的属性取自同一个域RS 仍为n目关系,由既属于R又属于S的元组组成RS=ttR tS RS=R(R-S),笛卡尔积(Cartesian Product)R:n目关系,k1个元组S:m目关系,k2个元组RS 列:(n+m)列元组的集合 元组的前n列是关系R的一个元组 后m列是关系S的一个元组 行:k1k2个元组,选择、投影、连接、除学生-课程数据库:学生关系Student、课程关系Course和选修关系SC,专门的关系运算,1.选择(Selection),1)选择又称为限制(Restriction)2)选择运算符的含义 在关

23、系R中选择满足给定条件的诸元组,记作:F(R)F:选择条件,是一个逻辑表达式,基本形式为:X1Y1其中表示比较运算符,可是=、=、=等;X1、Y1等是属性名,或为常量;属性名也可以用它的序号来代替。,3)选择运算是从关系R中选取使逻辑表达式F为真的元组,是从行的角度进行的运算,2.投影(Projection),1)投影运算符的含义 从R中选择出若干属性列组成新的关系 ai,aj(R)ai,aj为R中的属性列2)投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行),3.连接(Join),1)连接也称为连接2)连接运算的含义从两个关系的笛卡尔积

24、中选取属性间满足一定条件的元组,记作A和B:分别为R和S上度数相等且可比的属性组:比较运算符连接运算从R和S的广义笛卡尔积RS中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系的元组,3)两类常用连接运算 等值连接(equijoin)什么是等值连接 为“”的连接运算称为等值连接等值连接的含义 从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:,自然连接(Natural join)自然连接是一种特殊的等值连接两个关系中进行比较的分量必须是相同的属性组在结果中把重复的属性列去掉 自然连接的含义 R和S具有相同的属性组B,4)一般的连接操作是从行的角度进行

25、运算。自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。,例5关系R和关系S 如下所示:,4.除(Division),给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X 属性列上的投影:元组在X上分量值x的象集Yx包含S在Y上投影的集合,记作:,除操作是同时从行和列角度进行运算,例6设关系R、S分别为下图的(a)和(b),RS的结果为图(c),分析,在关系R中,A可以取四个值a1,a2,a3,a4a1的象集为(b1,c2),(b2,c3),(b2

26、,c1)a2的象集为(b3,c7),(b2,c3)a3的象集为(b4,c6)a4的象集为(b6,c6)S在(B,C)上的投影为(b1,c2),(b2,c1),(b2,c3)只有a1的象集包含了S在(B,C)属性组上的投影所以RS=a1,关系R、S如下表所示,R(Al,A2(13(S)的结果为_。A.d B.c,dC.c,d,8 D.(a,b),(b,a),(c,d),(d,f),综合举例,以学生-课程数据库为例例7 查询至少选修1号课程和3号课程的学生号码首先建立一个临时关系K:然后求:,例8 查询选修了2号课程的学生的学号。,例9 查询至少选修了一门其直接先行课为5号课程的的学生姓名,例10

27、 查询选修了全部课程的学生号码和姓名。,关系代数运算的应用举例,设教学数据库中的4个基本关系如下:教师关系 T(T#,Tname,Title)课程关系 C(C#,Cname,T#)学生关系 S(S#,Sname,Age,Sex)选课关系 SC(S#,C#,Score),运算举例,学习课程号为C2课程的学生学号与成绩学习课程号为C2课程的学生学号与姓名至少选修Liu老师所授课程中一门课程的学生学号与姓名选修课程号为C2或C4的学生学号至少选修课程号为C2和C4的学生学号不学C2课程的学生姓名与年龄学习全部课程的学生姓名所学课程中包含学生S3所学课程的学生学号,教师关系 T(T#,Tname,Ti

28、tle)课程关系 C(C#,Cname,T#)学生关系 S(S#,Sname,Age,Sex)选课关系 SC(S#,C#,Score),Answer,S#.Score(C#=C2(SC)S#.Sname(C#=C2(S SC)S#.Sname(Tname=Liu(S SC C T)S#.(C#=C2 C#=C4(SC)1(1=42=C2 5=C4(SC SC)Sname,age(S)-Sname,age(C#=C2(S SC)Sname(S(S#,C#(SC)C#(C)S#,C#(SC)C#(S#=S3(SC),五、数据库体系结构,数据库系统的三级模式结构数据库的二级映像功能与数据独立性,数据

29、库系统的三级模式结构,模式(Schema)外模式(External Schema)内模式(Internal Schema),数据库系统的三级模式结构,一、模式(Schema),模式(也称逻辑模式)数据库中全体数据的逻辑结构和特征的描述 所有用户的公共数据视图,综合了所有用户的需求一个数据库只有一个模式模式的地位:是数据库系统模式结构的中间层 与数据的物理存储细节和硬件环境无关 与具体的应用程序、开发工具及高级程序设计语言无关,模式定义 数据的逻辑结构(数据项的名字、类型、取值范围等)数据之间的联系 数据有关的安全性、完整性要求,二、外模式(External Schema),外模式(也称子模式或

30、用户模式)数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述 数据库用户的数据视图,是与某一应用有关的数据的逻辑表示,外模式的地位:介于模式与应用之间 模式与外模式的关系:一对多 外模式通常是模式的子集 一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求 对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同 外模式与应用的关系:一对多 同一外模式也可以为某一用户的多个应用系统所使用 但一个应用程序只能使用一个外模式,外模式的用途 保证数据库安全性的一个有力措施 每个用户只能看见和访问所对应的外模式中的数据,三、内模式

31、(Internal Schema),内模式(也称存储模式)是数据物理结构和存储方式的描述 是数据在数据库内部的表示方式 记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储)索引的组织方式 数据是否压缩存储 数据是否加密 数据存储记录结构的规定 一个数据库只有一个内模式,例如学生记录,如果按堆栈存储,则插入一条新记录总是放在学生记录存储的最后,如右图所示,如果按学号升序存储,则插入一条记录就要找到它应在的位置插入,如图(b)所示如果按照学生年龄聚簇存放,假如新插入的S3是16岁,则应插入的位置如图(c)所示,数据库的二级映像功能与数据独立性,三级模式是对数据的三个抽象级别二级映象在D

32、BMS内部实现这三个抽象层次的联系和转换 外模式模式映像 模式内模式映像,一、外模式模式映象,模式:描述的是数据的全局逻辑结构外模式:描述的是数据的局部逻辑结构外模式模式映象定义外模式和模式之间的对应性 同一个模式可以有任意多个外模式 每一个外模式,数据库系统都有一个外模式模式映象,定义外模式与模式之间的对应关系 映象定义通常包含在各自外模式的描述中,保证数据的逻辑独立性 当模式改变时,数据库管理员修改有关的外模式模式映象,使外模式保持不变 应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。,二、模式内模式映象,模式内模式映象定义了数据全局逻辑结构与存储结构之间的对应关系。例如,说明逻辑记录和字段在内部是如何表示的 数据库中模式内模式映象是唯一的 该映象定义通常包含在模式描述中,保证数据的物理独立性 当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式内模式映象,使模式保持不变 应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性。,Page 127,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号