




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统 本章讨论的主要问题是:本章讨论的主要问题是: 1. 什么是数据库?为什么用数据库来存储大批量的数据?什么是数据库?为什么用数据库来存储大批量的数据? 2. 如何将现实世界中大量的、复杂的数据存储到数据库如何将现实世界中大量的、复杂的数据存储到数据库中?中? 3. 如何有效地获取和处理数据库中的数据?如何有效地获取和处理数据库中的数据? 4. 数据的集中存储和管理会带来什么问题?如何保护数数据的集中存储和管理会带来什么问题?如何保护数据库中的数据?据库中的数据?计算机导论计算机导论成都工业学院成都工业学院情
2、景问题情景问题查找肇事车辆查找肇事车辆 情景问题:情景问题:肇事者是一名男性青年,驾驶一辆红色轿车,牌照肇事者是一名男性青年,驾驶一辆红色轿车,牌照是吉是吉A P?9,肇事后向东南方向逃走。,肇事后向东南方向逃走。请查询!请查询!存储轿车的有关信息存储轿车的有关信息轿车数据表轿车数据表姓名年龄性别车号王一35男吉A P2829 SQLSQL查询语句查询语句select select 姓名,年龄,性别姓名,年龄,性别 from from 轿车数据表轿车数据表where where 颜色颜色“红红” and and 车号车号like(P?9)like(P?9)计算机导论计算机导论成都工业学院成都工
3、业学院第第 8 章章 数据库管理系统数据库管理系统什么是数据库什么是数据库 数据独立存储,产生冗余和修改不一致数据独立存储,产生冗余和修改不一致 人事处、教务处、财务处和科研处都分别存储了教师的人事处、教务处、财务处和科研处都分别存储了教师的职称信息,某位教师由副教授评为教授,如何更改?职称信息,某位教师由副教授评为教授,如何更改? 计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统什么是数据库什么是数据库 为了满足同一个单位的不同部门共享数据的要求,解决数据为了满足同一个单位的不同部门共享数据的要求,解决数据重复存储和修改不一致等问题,可以将教师的数据信
4、息组织重复存储和修改不一致等问题,可以将教师的数据信息组织到一起并存储到数据库中,对数据进行集中的存储和管理。到一起并存储到数据库中,对数据进行集中的存储和管理。 数据库(数据库(Data Base,DB)是能够被统一管理的相关数据集是能够被统一管理的相关数据集合,这些数据具有一定的结构,能够长期存储,具有较小的合,这些数据具有一定的结构,能够长期存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为多个用户共冗余度、较高的数据独立性和易扩展性,并可为多个用户共享。享。计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统什么是数据库什么是数据库 n 数据
5、库管理系统(数据库管理系统(Data Base Management System,DBMS)是为数据库的建立、使用和维护而配置的系统软件,是用户是为数据库的建立、使用和维护而配置的系统软件,是用户和数据库之间的一个接口,用户通过数据库管理系统定义和和数据库之间的一个接口,用户通过数据库管理系统定义和操纵数据库中的数据,并保证数据的安全性、完整性、并发操纵数据库中的数据,并保证数据的安全性、完整性、并发操作以及故障发生后的系统恢复。操作以及故障发生后的系统恢复。n 目前,流行的数据库管理系统有目前,流行的数据库管理系统有Oracle、DB2、Sybase、SQL Server和和Access等
6、。等。如何建立和使用数据库?如何建立和使用数据库?计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统什么是数据库什么是数据库 用户对数据库的操作过程是:用户对数据库的操作过程是:(1)用户(通过应用程序)向)用户(通过应用程序)向DBMS提出操作请求并提交必要的参数,控提出操作请求并提交必要的参数,控制转入制转入DBMS;(2)DBMS分析用户提交的命令和参分析用户提交的命令和参数向操作系统发出相应的执行命令,数向操作系统发出相应的执行命令,控制转移到操作系统;控制转移到操作系统;(3)操作系统分析命令参数,在数据)操作系统分析命令参数,在数据库上实现具体
7、的操作,将操作结果送库上实现具体的操作,将操作结果送入系统缓冲区,控制返回给入系统缓冲区,控制返回给DBMS;(4)DBMS将系统缓冲区中的数据取将系统缓冲区中的数据取出呈现给用户。出呈现给用户。 DBMS在计算机系统中的位置在计算机系统中的位置计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统什么是数据库什么是数据库 (1)数据定义数据定义。能够对数据库的数据模型进行定义,能够对。能够对数据库的数据模型进行定义,能够对数据库的完整性、安全性和保密性进行定义。数据库的完整性、安全性和保密性进行定义。(2)数据操纵数据操纵。提供操作接口,使得用户能够方便地对
8、数据。提供操作接口,使得用户能够方便地对数据进行增加、删除、修改、查询、统计和打印等各种操作。进行增加、删除、修改、查询、统计和打印等各种操作。(3)事务管理事务管理。通过并发控制、存取控制、完整性控制、安。通过并发控制、存取控制、完整性控制、安全性控制、系统恢复等机制,实现事务管理功能,以保证数全性控制、系统恢复等机制,实现事务管理功能,以保证数据库的完整性和有效性。据库的完整性和有效性。(4)数据维护数据维护。能够对数据库进行各种维护,包括数据库的。能够对数据库进行各种维护,包括数据库的初始化、数据转储、数据库性能监测、数据库重组等。初始化、数据转储、数据库性能监测、数据库重组等。(5)其
9、他功能其他功能。为了扩大数据库的应用,数据库管理系统还。为了扩大数据库的应用,数据库管理系统还应提供与其他类型数据库之间的格式转换以及网络通信等功应提供与其他类型数据库之间的格式转换以及网络通信等功能。能。DBMS的基本功能的基本功能计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统什么是数据库什么是数据库 n 结构化查询语言(结构化查询语言(Structured Query Language,SQL语言)语言)是一种是一种通用通用的国际标准的国际标准数据库语言数据库语言,用户可以使用,用户可以使用SQL语言语言对来自各种不同厂商的数据库进行操作。对来自各
10、种不同厂商的数据库进行操作。n SQL语言属于语言属于4GL,是非过程式程序设计语言,当用户提出,是非过程式程序设计语言,当用户提出某项操作请求时,只需指明某项操作请求时,只需指明“做什么做什么”,而不必指明,而不必指明“如何如何做做”,由,由DBMS来决定对指定数据使用何种存取手段以保证来决定对指定数据使用何种存取手段以保证最快的操作速度。最快的操作速度。n SQL语言不仅功能强大,而且语法接近英语口语,符合人类语言不仅功能强大,而且语法接近英语口语,符合人类的思维习惯,因此,较为容易学习和掌握。的思维习惯,因此,较为容易学习和掌握。结构化查询语言结构化查询语言SQL 计算机导论计算机导论成
11、都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统什么是数据库什么是数据库 结构化查询语言结构化查询语言SQL 用户使用用户使用SQL语言向语言向DBMS提出操作请求提出操作请求用户使用用户使用SQL语言向语言向DBMS提出操作请求提出操作请求可以在可以在DBMS中直接键入中直接键入SQL命令,还可以嵌入到程序语言中命令,还可以嵌入到程序语言中 计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 计算机科学用计算机科学用实体实体这个概念来表示客观存在的这个概念来表示客观存在的事物
12、事物。一般。一般说来,一种事物都会有各种各样的说来,一种事物都会有各种各样的特征特征,表示了事物不同,表示了事物不同方面的性质,我们从业务处理的需要出发,从事物的特征方面的性质,我们从业务处理的需要出发,从事物的特征中选取出有限个特征作为中选取出有限个特征作为属性属性来刻画这个实体。来刻画这个实体。事物事物-特征特征实体实体-属性属性抽抽 象象计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 计算机科学用计算机科学用实体实体这个概念来表这个概念来表示客观存在的示客观存在的事物事物。一般说来,。
13、一般说来,一种事物都会有各种各样的一种事物都会有各种各样的特征特征,表示了事物不同方面的性质,我表示了事物不同方面的性质,我们从业务处理的需要出发,从事们从业务处理的需要出发,从事物的特征中选取出有限个特征作物的特征中选取出有限个特征作为为属性属性来刻画这个实体。来刻画这个实体。事物事物-特征特征实体实体-属性属性抽抽 象象将现实世界抽象为将现实世界抽象为E-R模型模型 计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 n 实体之间的联系通常有以下实体之间的联系通常有以下3种:种:(1)一对一
14、联系;)一对一联系;(2)一对多联系;)一对多联系;(3)多对多联系。)多对多联系。n 通常用实体通常用实体-联系图(联系图(E-R图)图)来描述实体以及实体之间的联系。来描述实体以及实体之间的联系。 将现实世界抽象为将现实世界抽象为E-R模型模型 实体实体属性属性属性属性联系联系计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 例例8.1 为学生选课系统建立实体为学生选课系统建立实体-联系图。联系图。计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据
15、库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 将将E-R模型影射为关系模型模型影射为关系模型 n 关系模型的基本思想是把实关系模型的基本思想是把实体以及实体之间的联系都看成体以及实体之间的联系都看成是关系,以是关系,以二维表二维表的形式描述,的形式描述,称为称为数据表数据表。n 表中的表中的列列对应实体的对应实体的属性属性,每一列的数据总是取自同一个每一列的数据总是取自同一个集合,这个集合称为域,每个集合,这个集合称为域,每个实体对应表中的实体对应表中的行行,称为,称为记录记录,可以惟一标识一个记录的属性可以惟一标识一个记录的属性称为称为主键主键。 计算机导论计算机导论成都工业学
16、院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 属性名属性名主键主键记录记录(行行)属性(列)属性(列)字符串字符串整数整数男男/女女计算机、计算机、日期型日期型域域基础科学基础科学 1986/03/26 女女汤晓影汤晓影 0003工商管理工商管理 1987/12/25 男男李明李明 0002计算机计算机 1986/09/02 男男陆宇陆宇 0001所在学院所在学院 出生日期出生日期 性别性别 姓名姓名 学号学号 关系关系计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用
17、数据库的使用 数据表示数据表示建立数据库建立数据库 例例8.2 将例将例8.1抽象出的抽象出的E-R模型映射为关系模型。模型映射为关系模型。学生关系学生关系学生信息表(学生信息表(学号学号,姓名,所在学院,所学专业,班级),姓名,所在学院,所学专业,班级)课程关系课程关系课程信息表(课程信息表(课程号课程号,课程名,学时,学分),课程名,学时,学分)选课关系选课关系学生成绩表(学生成绩表(学号学号,课程号课程号,成绩),成绩)计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 例例8.2 将例将
18、例8.1抽象出的抽象出的E-R模型映射为关系模型。模型映射为关系模型。计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 为什么学生成绩表只存储学号?存储姓名?学号和姓名?为什么学生成绩表只存储学号?存储姓名?学号和姓名?计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据表示数据表示建立数据库建立数据库 SQL语言使用语言使用CREATE TABLE语语句定义数据表。例如,定义学生句定义数据表。例如,定义学生选课系统的学生信息表
19、,其选课系统的学生信息表,其SQL语句为:语句为: 采用采用SQL语言定义数据库语言定义数据库 计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据处理数据处理操作数据库操作数据库 对数据库的操作主要是通过对数据库的操作主要是通过SQL语言向语言向DBMS发出操作请求。发出操作请求。1. 数据查询数据查询:SQL语言使用语言使用SELECT语句进行数据查询。语句进行数据查询。例如,从例如,从student数据表中查找数据表中查找080401班级的所有学生,其班级的所有学生,其SQL语句为:语句为:计算机导论计算机导论成都工业学院
20、成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据处理数据处理操作数据库操作数据库 对数据库的操作主要是通过对数据库的操作主要是通过SQL语言向语言向DBMS发出操作请求。发出操作请求。2. 数据更新数据更新主要包括对记录进行增加、删除和修改等操作。主要包括对记录进行增加、删除和修改等操作。例如,在数据表例如,在数据表student中删除陆宇同学的记录信息,其中删除陆宇同学的记录信息,其SQL语句为:语句为:计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据处理数据处理操作数据库操作数据库
21、对数据库的操作主要是通过对数据库的操作主要是通过SQL语言向语言向DBMS发出操作请求。发出操作请求。3. 数据控制数据控制主要实现用户对数据的存取权限进行控制,包括主要实现用户对数据的存取权限进行控制,包括数据表的授权、完整性规则的描述和事务控制等。例如,把数据表的授权、完整性规则的描述和事务控制等。例如,把数据表数据表student的查询权限授予用户的查询权限授予用户U2,其,其SQL语句为:语句为:你体会到你体会到4GL语言的好处了吗?语言的好处了吗?计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据保护机制数据保护机制
22、 n 数据库集中存储了企业数据,是企业重要的信息资源,如何数据库集中存储了企业数据,是企业重要的信息资源,如何保证数据的保证数据的正确性正确性和和安全性安全性是数据库应用极其关键的课题。是数据库应用极其关键的课题。n 现代数据库系统主要从安全性、完整性、并发控制、故障恢现代数据库系统主要从安全性、完整性、并发控制、故障恢复等方面保护数据库。复等方面保护数据库。n 事务是并发控制和故障恢复的基本单位,所谓事务是并发控制和故障恢复的基本单位,所谓事务事务是由用户是由用户定义的一个定义的一个数据库操作序列数据库操作序列,是一个不可分割的逻辑工作单,是一个不可分割的逻辑工作单元,这些操作或者全部执行成
23、功,或者一个也不执行。元,这些操作或者全部执行成功,或者一个也不执行。计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据保护机制数据保护机制 n数据库的数据库的安全性安全性主要通过控制数据库的访问权限,防止非法主要通过控制数据库的访问权限,防止非法入侵和破坏。入侵和破坏。n身份识别身份识别:数据库最基本的安全保护措施,例如设置口令和数据库最基本的安全保护措施,例如设置口令和密码;密码;n访问权限访问权限:对有权进入数据库的用户要进一步进行存取控制,:对有权进入数据库的用户要进一步进行存取控制,事先规定允许用户访问数据的范围以及
24、有权执行的操作,然事先规定允许用户访问数据的范围以及有权执行的操作,然后在用户发出数据库操作请求的时候进行合法权限的检查。后在用户发出数据库操作请求的时候进行合法权限的检查。n加密存储加密存储:在对安全性要求非常高的应用系统,也可以将数:在对安全性要求非常高的应用系统,也可以将数据进行加密后存储在数据库中。据进行加密后存储在数据库中。计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据保护机制数据保护机制 n数据库的数据库的完整性完整性在于保证数据库里的数据语义是正确的。在于保证数据库里的数据语义是正确的。n例如,在数据库里要执
25、行一个转帐事务:例如,在数据库里要执行一个转帐事务:(1)从一个账户减去一笔钱;)从一个账户减去一笔钱;(2)在另外一个账户里加上同样数目的钱。)在另外一个账户里加上同样数目的钱。如果不进行完整性检验,可能出现对这个两个账户的更新如果不进行完整性检验,可能出现对这个两个账户的更新操作只做了其中之一或转帐的数目不同,显然,破坏了数操作只做了其中之一或转帐的数目不同,显然,破坏了数据的完整性。据的完整性。 计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据保护机制数据保护机制 n数据库的数据库的完整性完整性在于保证数据库里的数据语
26、义是正确的。在于保证数据库里的数据语义是正确的。n对数据库的并发操作可能会破坏数据库的完整性,例如:对数据库的并发操作可能会破坏数据库的完整性,例如:(1)A售票点读出某航班的余票数售票点读出某航班的余票数T,设,设T为为100;(2)B售票点读出同一航班的余票数售票点读出同一航班的余票数T,则,则T也为也为100;(3)A售票点售出一张机票,修改余票数售票点售出一张机票,修改余票数T为为99写回数据库;写回数据库;(4)B售票点售出一张机票,修改余票数售票点售出一张机票,修改余票数T为为99写回数据库。写回数据库。通常采用封锁保证数据库的完整性。所谓通常采用封锁保证数据库的完整性。所谓封锁封锁是指事务是指事务 A在在对某个数据对象操作之前,先向系统发出操作请求,并对其对某个数据对象操作之前,先向系统发出操作请求,并对其进行加锁,于是事务进行加锁,于是事务 A对该数据对象具有一定的控制权,其对该数据对象具有一定的控制权,其他事务不能更新此数据对象直到事务他事务不能更新此数据对象直到事务 A释放这个锁。释放这个锁。 计算机导论计算机导论成都工业学院成都工业学院第第 8 章章 数据库管理系统数据库管理系统数据库的使用数据库的使用 数据保护机制数据保护机制 n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度矿山事故水池建设与安全生产保障合同
- 二零二五年度城市别墅购房定金合同
- 2025年度景观施工项目安全监理合同
- 2025年度电视剧剧本编排与制作合同
- 二零二五年度广告传媒劳务派遣员工服务合同
- 酒店住宿意外事故责任免除与2025年度安全保障协议
- 二零二五年度老年赡养赡养金及医疗救助合同
- 办公区域搬迁安排及流程梳理通知
- 关于销售团队建设与管理的年度工作总结报告
- 美发店劳动合同协议书
- DeepSeek科普学习解读
- 第一单元第2课《生活之美》课件-七年级美术下册(人教版)
- 2025年七下道德与法治教材习题答案
- 危险化学品目录(2024版)
- 人教版八年级数学第二学期教学计划+教学进度表
- IEST-RP-CC0053
- 模糊逻辑与模糊推理
- 玉米收割机的设计(机械CAD图纸)
- 金属补偿器计算大全
- 国际部SOP手册2014修改版(2.0版)
- 净菜配送标准
评论
0/150
提交评论