数据库课程-ch1介绍

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

数据库系统概论计算机学院胡霍真1.2数据库系统概论教材Bookname:DatabaseSystemConcepts,第五版(本科教学版)Author:AbrahamSilberschatz,HenryEKorth,S.SudarshanPress:ChinaMachinePress1.3数据库系统概论参考书Bookname:AnIntroductiontoDatabaseSystemsAuthor:C.J.DatePress:ChinaMachinePressBookname:数据库系统概念(第三版)Author:萨师煊王珊Press:HigherEducationPressBookname:数据库系统基础Author:冯玉才Press:华中科技大学1.4数据库系统概论Chapter1:Introduction第一章:介绍PurposeofDatabaseSystems数据库系统作用ViewofData数据层次DataModels数据模型DataDefinitionLanguage数据定义语言DataManipulationLanguage数据操作语言TransactionManagement事务管理StorageManagement存储管理DatabaseAdministrator数据库管理员DatabaseUsers数据库用户OverallSystemStructure系统总体结构1.5数据库系统概论DatabaseManagementSystem(DBMS)数据库管理系统Data数据定义:描述事物的符号记录称为数据。数据是数据库中存储的基本对象,现实世界中的数据有很多种类,如文字、声音、图像、学生的档案记录等。数据在计算机中的描述:例:某学生的记录(19103104,张三,男,1985,计算机学院)1.6数据库系统概论DataBase数据库,简称DB定义:是指长期存储在计算机内的、有组织、可共享的相关数据的集合。数据库中的数据,按一定的数据模型组织、描述和存储,能供各种用户共享,具有较小的冗余度,数据间联系密切,而又有较高的程序与数据的独立性。1.7数据库系统概论DatabaseManagementSystem数据库管理系统定义:关联数据集合和一组访问这些数据的程序集目的:DBMS提供高效、便利的应用环境主要功能:①数据定义功能(DDL)②数据操纵功能(DML)③数据库的运行管理④数据库的建立和维护功能1.8数据库系统概论DataDefinitionLanguage(DDL)数据定义语言①数据定义功能(DDL):用户通过DBMS提供的数据定义语言DDL可以对数据库中的数据对象进行定义。数据库模式定义的规则说明如createtableaccount(account-numberchar(10),balanceinteger)datadictionary数据字典数据字典中包含元数据(即关于数据的数据)Databaseschema数据库模式Datastorageanddefinitionlanguage数据存储定义语言说明数据库系统中存储结构和访问方法的语言通常是数据定义语言的扩充1.9数据库系统概论DataManipulationLanguage(DML)数据操纵语言②数据操纵功能(DML):用户可以使用DBMS提供的数据操纵语言DML操纵数据,实现对数据库的基本操作,如查询、插入、删除和修改等。访问和操纵按照某种特定数据模型有组织起来的数据的语言DMLalsoknownasquerylanguage数据操纵语言一般被当作查询语言两类数据操纵语言过程化——用户指定所需数据及访问数据的方式非过程化——用户指定所需数据,但无须说明访问数据的方式最常用的查询语言是SQL,它的DML部分是非过程化的1.10数据库系统概论③数据库的运行管理数据库在建立、运用和维护时由DBMS统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。④数据库的建立和维护功能包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。1.11数据库系统概论DataBaseSystem,简称DBS,数据库系统定义:DBS是指在计算机系统中引入DB后的系统。组成:由DB、DBMS及其开发工具、应用系统、数据库管理员和用户构成。DBS=DB+DBMS+APPLICATION+DBA+USERDBA:DataBaseAdministrator,数据库管理员我们通常所说的数据库系统主要是指DBMS,而不是指存放数据的具体数据库。1.12数据库系统概论数据库管理系统数据库操作系统应用系统…用户用户1.13数据库系统概论数据库系统的应用:银行业:客户、帐户、贷款、银行交易航空业:预定、调度大学:注册、评分销售业:客户、产品、购买制造业:生产、记帐、定单、供应链人力资源:雇员记录、工资、课税减免数据库接触生活各层面1.14数据库系统概论PurposeofDatabaseSystems数据库系统的目的数据管理技术随着计算机软硬件的发展而不断发展,40多年来经历了以下三个阶段:人工管理阶段50年代中期以前没有操作系统,没有管理数据的软件,没有磁盘等直接存取的存储设备,因此无法将数据存储在磁盘上,人们只能用最原始的手工方式来操作计算机,例如用纸带穿孔来标记数据。数据不保存、应用程序管理数据、数据不共享、数据不具有独立性1.15数据库系统概论文件系统阶段文件系统阶段50年代后期到60年代中期计算机已经有了操作系统。在操作系统基础之上建立的文件系统已经成熟并广泛应用。因此,人们自然想到用文件把大量的数据存储在磁盘上,以实现对数据的永久保存和自动管理以及维护。用文件系统管理数据的优点数据可以长期保存由文件系统管理数据1.16数据库系统概论使用文件系统存储数据的缺点:1、Dataredundancyandinconsistency数据冗余和不一致性多种文件格式,不同的文件中信息重复2、Difficultyinaccessingdata访问数据困难要为每个新任务编写新程序3、Dataisolation—multiplefilesandformats数据孤立——多文件和多格式4、Integrityproblems完整性问题Integrityconstraints完整性约束(如帐目结算$25)是程序代码的组成部分增加新的约束或改变现有约束困难1.17数据库系统概论1.数据冗余和不一致性nameaddressdepartmentsalaryHayesRoundHiddAccount500JohnsonPerryridgeAccount780SmithPerryridgeLoan1200namecoursedepartmentHayesOSAccountJohnsonDBAccountSmithOSLoanLoanHayesLoanHayesAccount?employeeEnrollment接受培训的雇员不一致性1.18数据库系统概论2.访问数据困难要求:找出所有居住在武汉的顾客的姓名列表。涉及问题从顾客表格中提取所需信息。必须写一个新的应用程序。找出所有居住在武汉并且拥有至少1000美元存款的顾客的姓名列表。1.19数据库系统概论PurposeofDatabaseSystems(Cont.)数据库系统的作用(续)使用文件系统的缺点(续)5、Atomicityproblem原子性问题执行部分更新时的失败会导致数据库处于不一致状态如,帐号间的资金转换要么完成,要么完全不进行6、Concurrent-accessanomalies并发访问异常并发存取提高性能不经控制的并发存取会导致不一致–如,两个人读余额,并同时进行更新操作。7、Securityproblems安全性问题数据库系统为上述所有问题提供了解决方案1.20数据库系统概论6.并发访问异常Husband$100AccountA$500Wife$50Read$500$500-$50=$450Write$450Read$500$500-$100=$400Write$400$400/$450X1.21数据库系统概论数据库系统阶段数据库系统阶段60年代后期开始1969年,美国IBM公司研制了第一个层次数据库管理系统IMS(InformationManagementSystem)。同年,美国的DBTG(DataBaseTaskGroup)小组发表了DBTG报告,给出了网状型数据库的规范。在1970年,IBM公司的E.F.Codd研究员发表论文提出了关系数据库的模型,奠定了关系数据库的理论基础。随后一系列工作成果使E.F.Codd获得了1981年的ACM图灵奖。1.22数据库系统概论数据库系统的特点:1、数据结构化采用复杂的数据模型结构,描述数据本身的特点及数据之间的联系。数据库系统实现整体数据的结构化是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。2、数据的共享性高、冗余度低、易扩充数据是面向整个系统的,使得数据可以被多个用户、多个应用共享使用。数据共享大大减少数据冗余,也易于扩充。1.23数据库系统概论3、数据独立性高物理独立性:指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的。逻辑独立性:指用户的应用程序与数据库的逻辑结构是相互独立的。数据与程序的独立,把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。1.24数据库系统概论4、数据由DBMS统一管理和控制数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据,甚至可以同时存取数据库中同一数据。DBMS提供以下几方面的数据控制功能:①数据的安全性保护②数据的完整性检查③并发控制④数据库恢复1.25数据库系统概论Model模型models模型:是现实世界特征的模拟和抽象。根据模型应用的不同目的,将模型划分成两类:Conceptmodels概念模型也称信息模型;它是按用户的观点来对数据和信息建模;主要用于数据库设计;Datamodels数据模型主要包括层次、网状、关系模型等;它是按计算机系统的观点对数据建模;主要用于DBMS的实现;数据模型:描述数据、数据联系、数据语义以及一致性约束的概念工具的集合。1.26数据库系统概论Entity-RelationshipModel实体-联系模型实体-联系模型的模式示例(客户-储户-帐户)1.27数据库系统概论EntityRelationshipModel(Cont.)实体联系模型(续)E-Rmodelofrealworld现实世界的E-R模型Entities(objects)实体(对象)如客户、帐户、银行分支机构Relationshipsbetweenentities实体间的联系如客户约翰逊持有帐户A-101联系集“储户”将客户与帐户关联起来Mappingcardinalities映射基数广泛应用于数据库设计数据库通常将E-R模型的设计转换成关系模型(下面将论及)的设计,用于存储和处理1.28数据库系统概论数据模型通常由数据结构(系统静态特性)、数据操作(系统动态特性)和完整性约束三部分组成。常用的数据模型有以下四种:HierarchicalModel层次模型NetworkModel网状模型RelationalModel关系模型ObjectOrientedModel面向对象模型其中,层次模型和网状模型统称为非关系型模型。1.29数据库系统概论层次模型层次模型的数据结构①有且只有一个结点没有双亲结点,这个结点称为根结点;②根以外的其他结点有且只有一个双亲结点。层次模型用树形结构来表示各类实体以及实体间的联系。层次数据库系统只能处理一对多的实体

1 / 66
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功