数据库系统教程教材课件_第1页
数据库系统教程教材课件_第2页
数据库系统教程教材课件_第3页
数据库系统教程教材课件_第4页
数据库系统教程教材课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库系统教程课程介绍一、数据管理与数据库技术二、课程学习目的1.学习掌握数据库系统理论(主要是关系数据库)掌握数据库系统理论用命令等工具交互式地操作数据库通过编程访问数据库中的数据掌握如何设计数据库应用系统2.掌握数据库的内部结构和运行过程各种主要模块及其功能模块之间如何互动以完成操作的3.了解数据库新技术的一些发展动态课程特点三、课程特点:理论、技术、实践相结合的以关系理论为基础关系数据库理论数据模型设计的思想方法以技术和方法为主编程、软件系统设计做实验各种平台上的数据库操作方法及大型数据库管理系统的使用实验环境,推荐安装以下产品之一–IBMUDB7.0(或以上)forWindows–MSSQLSERVER7.0–Oracle设计并测试一个简单但完整的应用例子如一个车辆管理系统、一个多媒体房地产数据库\scm等学习内容和使用教材四、学习内容和使用教材/参考书国内的教材数据库系统原理,王能斌著,电子工业出版社,2000年版,ISBN7-5053-50-5304-7国外的教材DataManagementSystem,RaghuRamakrishnan,WCB/McGraw-Hill,1997,ISBN0-07-050775-9DatabaseSystemConcepts,A.SilberschatzandS.Sudarshan,McGraw-Hill,1997,ISBN7-111-06710-X参考文献微软环境DB2UDB7.1开发指南,IBM著,机械工业出版社,2001年版,ISBN7-111-08623-6理论、设计、实现(1-9章,18章)其它数据库产品的使用手册等第一章数据库系统引论什么是数据库?什么是DBMS?数据库系统发展历史数据库系统介绍数据库技术的应用领域数据库技术的技术领域

一、

什么是数据库?数据库是一个持久数据的集合,这些数据用于某企业的应用系统中(制造公司、银行、医院、大学、政府部门等)数据库象一个仓库 存储各种物品(数据)物品形状、大小数据格式———数据模式从仓库取得物品(数据)如何知道存储位置如何快速定位和取数据二、为什么要用数据库?1、

数据库系统与传统的文件系统保存方式相比,有明显的优点:数据独立性高数据共享程度高减少冗余,保证数据的一致性提供数据完整性约束机制并发访问和提供事务支持提供安全机制2、在典型的没有数据库系统的企业,每个应用拥有各自的文件-经常是存储在各自的磁带和磁盘—以致于难以用任何系统的方法来控制这些非常分散并且结构化程度不高的数据。数据库系统则保证了企业对数据的集中控制,并且具有较好的共享性。数据的独立性理解数据独立性的含义在数据库系统之前的系统—应用程序的数据文件有一定的物理存储方式、逻辑结构。数据与应用程序之间缺乏独立性。应用程序与数据的物理表示、逻辑表示是密切相关的,如果改变了数据的物理表示、逻辑表示也要相应改变应用程序。这是非数据独立数据独立性可以定义成应用程序不会因物理表示和访问技术的改变而改变。当然,这意味着应用程序不应依赖于任何特定的物理表示和访问技术数据库把数据的具体组织留给DBMS管理,用户能逻辑地抽象地处理数据,而不必关心数据在计算机中的具体表示方式与存储方式。DBMS—数据库管理系统数据独立性包括两个方面:物理独立性和逻辑独立性物理独立性:逻辑的独立性:应用程序与数据的逻辑表示无关。例:商品名称销售额某公司的销售管理应用程序新的分公司销售管理应用程序商品名称销售额…………商品名称销售额1+销售额2建立一个数据视图数据共享共享不仅指现有的应用程序可以共享数据库的数据,而且新的应用程序也能对这些数据进行操作。数据库中的每项数据可以被不同的用户共享。因此,每一个用户都可以因不同的目的而访问相同的数据。用户指数据的使用者包括应用程序,也可指真正意义上的用户

减少冗余:在非数据库系统中,每个应用程序都有自己的专用文件。这种情况经常导致在存储数据上有相当大的冗余,结果浪费存储空间。例:一个有关人事的应用程序和一个有关教育的应用程序拥有各自的数据文件:

EMPLOYEE文件中包括:职员名、出生日期、地址、所在部门、职务、职称和工资等等。

ENROLLMENT文件中包括职员名、职员所在部门、职务、职称、培训时间、培训课程、培训成绩等。 而数据库可以合并几个不同文件,可以部分地消除文件之间的冗余。 EMPLOYEE文件中包括:职员名、出生日期、地址、部门、职务、职称和工资等等。 ENROLLMENT文件中可只包括职员名、培训时间、培训课程、培训成绩等。

人事应用程序教育管理应用程序EMPLOYEE文件ENROLLMENT文件包括职员名、出生日期、地址、所在部门、职务、职称和工资等等。包括职员名、职员所在部门、职务、职称、培训时间、培训课程、培训成绩等。重复EMPLOYEE包括职员名、出生日期、地址、所在部门、职务、职称和工资等。ENROLLMENT包括职员名、培训时间、培训课程、培训成绩等。由于数据库管理数据可以在全局范围内共享,则在有关教育应用程序需要某职员的部门信息、职务、职称时,可以访问EMPLOYEE文件。这就是数据共享带来冗余程度的减少。合并EMPLOYEE文件和ENROLLMENT文件例:一个有关人事的应用程序和一个有关教育的应用程序拥有各自的数据文件:避免不一致:这是减少冗余度必然的结果数据一致性也指数据的正确性。假定一种情况下—职员E3在部门D8工作,这条信息在数据库中有两个不同的条目(分别在employee、enrollment文件中),职员E3的信息:E3,1975.1.3,某某地区,D8,主管科员,经济师,2000培训信息:E3,D8,主管科员,经济师,1999,计算机,90

E3,D8,主管科员,经济师,2001,税法,85当E3调动到D6部门工作后,应对相关数据项做怎样的修改?必须修改两个文件中有关该职员的部门信息才能保证数据一致性,如果管理人员没有意识到这种冗余或者没有及时修改不同数据文件中部门信息,则造成数据的不一致性。因此可见,消除冗余度可保证数据一致性。保持完整性:

完整性的问题的实质是确保数据库中的数据是正确的。前述的职员的部门信息如果在不同的文件中的记录不一致,就是缺少完整性的例子。(造成不完整性的主要原因是数据冗余性)另外,即使没有冗余,数据库也可能包含错误的信息。例如,可能显示职员属于一个不存在的部门。(可能由于输入的错误)数据库的集中控制可以有效地避免此类问题。主要通过支持数据管理员定义一些完整性约束来实现。如CHECK子句、触发子,断言等。并发访问和数据一致性文件系统一般不支持并发访问。数据库系统的并发访问控制可保证数据的一致性。提供事务支持:事务是一个逻辑工作单元,它包括一些数据库操作(特别是一些更新操作)。常见的例子如:从帐户

A到帐户

B转移一定的现金数。 2000元 帐户A----------帐户B数据库支持事务的概念,确保两个操作要么都做,要么都不做,即使在系统执行过程中出现故障(比如因为电源断)也应如此。这就是事务的原子性。这种事务的操作可确保数据的正确。事务管理是这门课程讲授的重要内容之一。减去2000元存入2000元第一步第二步增加安全性控制 数据库系统的共享性使数据库的数据更加有可能被非法访问,非法修改。这就要求相称的、好的安全系统,没有安全保障,数据的安全性可能比传统的文件系统更处于危险之中。 数据库通常可定义安全性约束或规则 比如: 定义一些敏感数据的访问级别,只允许某一级别的用户访问。 对于数据库的每条信息的不同类型的访问(修改、插入或删除等)可建立不同的约束。加强标准化数据在数据库中是集中控制,在全局范围内共享,甚至有可能在不同的系统中移动。数据采用一定的标准(部门标准、安装标准、社团标准、工业标准、国家标准和国际标准)可确保有效地、最大程度地支持数据共享。三、数据库的发展历史层次数据库IBM,20世纪60年代末,IMS对于层次数据,层次DBMS具有高效率网状数据库比层次结构复杂的网状结构可描述比较复杂的现实世界关系数据库1970年,Codd,提出了关系数据模型(relationdatamodel),以关系(relation)或称二维表结构(table)作为描述数据的基础,它建立在严格的数学概念的基础上,奠定了关系数据库的理论基础。对象数据库与对象-关系数据库层次数据库示例某大学………计算机学院工商管理学院化工学院计算机系网络中心………管理系99级2000级………………………学生甲学生乙………………网状数据库示例某大学学生甲选修课程1学生乙选修课程2选修课程3选修课程4关系数据库示例studentsSidCnoMajor1101No1108Yes2102Yes3101No3108Yes5102Yes5105NoEnrollment

CnoCnameCroomCtime101Database1-1021000am102OS1-3020800am105English2-2020230pm108French3-4020230pmcourseSidLnameFnameClassTelno.1JonesAllan2555-12342BrownJohn3555-13243SmithAdward2555-32145WhiteHarry3555-3142SidNameClassTelno.EnrollmentLnameFnameCnoMajor1JonesAllan2555-1234101No108Yes2BrownJohn3555-1324102Yes3SmithAdward2555-3214101No108Yes5WhiteHarry3555-3142102Yes105No对象-关系数据库示例studentsCnoCnameCroomCtime101Database1-1021000am102OS1-3020800am105English2-2020230pm108French3-4020230pmcourse在ORACLE中,name列的结构类型称为对象类型,在INFORMIX中称为行类型在DB2UDB(和新的ANSISQL-99标准)中称为用户定义类型(UDT)

什么是数据库系统?数据库系统包括:

数据与数据库 数据库管理系统DBMS

应用系统

数据库管理员DBA、用户等DBMS系统应具备提供高级的用户接口查询处理和优化数据目录管理并发控制恢复功能完整性约束检查访问控制数据、数据模型、数据模式

数据概念对事物描述的符号记录称为数椐如果一个仓库房间内放的物品没有统一的形状,如何放的多、拿得快?数据有定的格式数据格式的规定是数据的语法,数据的含义是数据的语义607362123数据模型计算机系统设计者关心的数据的意义不是所有的意义,是某种层次上的抽象模型由如下要素组成一组概念,用于数据的定义或描述一组符号,用于表示数据及其联系一组操作,作用在数据上一组限制或约束,用于抽象数据中的联系静态特性(数据的结构、联系、约束)动态特性(操作)数据库领域涉及的数据模型概念数据模型

面向现实世、面向用户的数据模型逻辑数据模型

用户从数据库所看到的数据模型物理数据模型

反映数据存储结构的数据模型概念数据模型用户看到的问题描述模型,用户易理解一般与应用程序的内部逻辑无关,一般与DBMS无关一般用接近自然语言的语言来描述一组较自然的概念以及符号一组规则和操作等例子:数据流图、EXCEL表、对象结构、E-R数据模型逻辑数据模型用户或应用系统设计者看到的在程序一级的数据模型(即在编程时涉及到的模型)比概念数据模型更抽象与DBMS有关系典型例子是关系数据模型或有关程序数据结构More:networkmodel,hierarchicalmodel物理数据模型在应用系统内部的存储级别上看到的数据模型实际上就是硬盘上的数据格式及其有关操作和限制和DBMS有关、和操作系统及硬件有关例子:B+树文件中的数据结构三种模型的相互关系概念模型 :张三以前在北京时是李四的朋友逻辑模型 :(朋友张三李四)物理模型 ://l00001110000110//各种相邻模型之间可以容易地建立映射(低)抽象程度(高)数据模式用一种数据模型来描述一类具体事物后得到的描述,称为模式。模式是型的描述,是对某一类数据的结构、联系和约束的描述与数据模型的区别实例,是值的描述

例:采用关系数据模型描述一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论