《数据库1数据库的基本知识挺有用ppt培训课件》由会员分享,可在线阅读,更多相关《数据库1数据库的基本知识挺有用ppt培训课件(64页珍藏版)》请在金锄头文库上搜索。
1、1,第7章 数据库基础,本章主要内容7.1 数据库的概念7.2 数据模型7.3 关系数据库7.4 Access简介7.5 数据表的建立和使用7.6 查询,数据库的概念,2,7.1 数据库的概念,数据:存储在介质上的能够识别的物理符号,由数字、字母、图形、图像、声音等组成。 数据处理:对不同类型的数据进行收集、整理、组织、存储、加工、传输、检索的各个过程。,数据处理方式的发展,3,7.1.1 数据处理方式的发展,1手工管理阶段特点: (1) 数据不保存-不能实现数据共享。(2) 数据与程序不可分割。(3)各程序的数据彼此独立-数据冗余。适应场合: 数据量较小。,文件系统阶段,4,2. 文件系统阶
2、段 (1) 程序和数据分开, 有一定的独立性。 (2)数据以文件形式保存,由操作系统按名存取。 (3) 实现一定程度的数据共享。 (4) 数据文件之间缺乏联系。,数据库阶段,5,3. 数据库阶段 (1) 数据和程序之间彼此独立,实现共享 (2) 数据以数据库形式保存,最大限度减少冗余。 (3) 专门的数据库管理软件-DBMS。,其他数据库,6,(1)分布式数据库系统 数据库技术和计算机网络技术相结合产生: 1)物理上独立,数据分布在网络的不同计算机 2)逻辑上属于一个整体。 (2)面向对象的数据库 将程序设计语言中对象的概念引用到数据库中: 1)数据和操作方法作为对象统一管理; 2)可以处理更
3、为复杂的对象;,数据库的概念,7,7.1.2 数据库中的常见概念,1数据库(DB) 指按特定的组织形式将数据保存在存储介质上 特点: (1)在数据库中,不仅包含数据本身,也包含数据之间的联系; (2)数据通过一定的数据模型进行组织,保证有最小的冗余度,有层次、网状和关系模型; (3)各个应用程序共享数据; (4)对数据的各种操作,如定义、操纵等都由DBMS统一进行。,数据库的概念,8,7.1.2 数据库中的常见概念,2数据库管理系统(DBMS) 对数据库进行管理的软件,功能: (1)定义: 定义数据库的结构、数据完整性和其它的约束条件; (2)操纵: 实现数据插入、修改、删除和查询; (3)控
4、制: 实现数安全控制、完整性控制以及多用户环境下的并发控制; (4)维护: 提供对数据的装载、转储和恢复,数据库的性能分析和监测; (5)数据字典,存放数据库各级结构的描述。,数据库的概念,9,7.1.2 数据库中的常见概念,3应用程序 利用DBMS开发的应用软件。 4数据库管理员(DBA) 负责管理数据库资源;确定用户需求,设计、实现数据库;并负责维护和管理数据库。 5数据库系统(DBS) 完整的数据库系统由硬件、数据库、数据库管理系统、操作系统、应用程序、数据库管理员等部分组成。,数据库的概念,10,7.1.2 数据库中的常见概念,图6-4 数据库系统的组成,数据库体系结构,11,7.2
5、数据模型,从客观存在的事物到最后在计算机内的数据表示,经历了两个不同的抽象过程,对应的三层数据模型,即概念数据模型、结构数据模型和物理数据模型。 7.2.1 概念数据模型 概念数据模型用来建立信息世界的数据模型,强调语义表达,描述信息结构,是对现实世界的第一层抽象。,实体,12,1实体,1) 实体:客观存在并且可以相互区别的事物可以是具体的事物,如一个学生,一本书也可以是抽象的事物,如一次考试 2) 实体的属性:用于描述实体的特性,如学生用学号、姓名、性别、年龄等属性描述 3) 一个实体是若干个属性值的集合,如一个特定的学生用学号、姓名、性别等属性值描述 4) 实体集:具有相同属性的实体的集合
6、,如若干个学生实体的集合构成学生实体集,实体集间的联系,13,2实体集之间的联系,两个实体集之间实体的对应关系称为联系 (1)一对一联系 如果实体集E1中的每一个实体至多和实体集E2中的一个实体有联系,反之亦然,则称E1和E2是一对一的联系,表示为1:1。例如: 实体集校长和 实体集学校之间的 联系是一对一。,实体集间的联系,14,2实体集之间的联系,(2)一对多联系 如果实体集E1中的每个实体与实体集E2中的任意个实体有联系,而实体集E2中的每一个实体至多和实体集E1中的一个实体有联系,则称E1和E2之间是一对多的联系,表示为1:n,E1称为一方,E2为多方。 例如,实体集学校和实 体集学生
7、之间是一对多 的联系,一方是实体集 学校,多方是实体集学生,实体集间的联系,15,2实体集之间的联系,(3)多对多联系 如果实体集E1中的每个实体与实体集E2中的任意个实体有联系,反之,实体集E2中的每个实体与实体集E1中的任意个实体有联系,则称E1和E2之间是多对多的联系,表示为m:n。 例如,实体集学生和实 体集课程之间是多对多 的关系,E-R图,16,3E-R图,E-R图: 用图形方式表示实体集之间的联系。 组成: 1)矩形:表示实体集,实体名称写在框内; 2)椭圆:表示实体集或联系的属性,框内标明属性的名称; 3)菱形:表示实体间的关系,框内注明联系名称; 4)连线:连接实体和各个属性
8、、实体和联系,并注明联系种类,即1:1、1:n或n:m。,E-R图实例,17,E-R图实例:学生实体集和课程实体集之间的关系,逻辑数据模型,18,7.2.2 逻辑数据模型,逻辑数据模型是指在数据库系统中表示实体类型和实体之间关系的模型。 1层次模型 1) 用树形表示数据之间的多级层次结构。 2) 结构特点:(1) 只有一个最高结点即根结点(2) 其余结点有而且仅有一个父结点(3) 上下层结点之间表示一对多的联系 3) 应用: 行政组织机构、家族辈份关系等。,示意图,19,逻辑数据模型,20,7.2.2 逻辑数据模型,2网状模型 1) 用图表示数据之间的关系 2) 允许结点有多于一个的父结点 3
9、) 可以有一个以上的结点没有父结点。 4) 特点: 表示结点之间多对多的联系。 3关系模型 1) 用二维表格来表示实体及实体之间的联系 2) 实际应用中,每一个二维表代表了一个关系。 3) 特点:结构简单,容易实现,物理数据模型,21,7.2.3 物理数据模型,物理数据模型反映了数据在存储介质上的存储结构 物理数据模型不仅与具体的DBMS有关,也和操作系统及硬件有关。,关系数据库,22,7.3 关系数据库,7.3.1 关系模型的组成-二维表格,常用术语,23,关系模型中的常用术语,1元组 在二维表中,从第二行起的每一行称为一个元组,在文件中对应一条具体记录。 2属性 二维表中,每一列称为一个属
10、性,在文件中对应一个字段。 3属性名 二维表第一行显示的每一列的名称,在文件中对应字段名,例如“姓名”,“性别”等。,常用术语,24,关系模型中的常用术语,4属性值 行和列的交叉位置表示某个属性的值。 5域 表示各个属性的取值范围。,常用术语,25,关系模型中的常用术语,6表结构 表中的第一行,表示组成该表的各个字段名称,各字段取值的类型、宽度等。 7关系模式 是对关系结构的描述,表示格式:关系名(属性1,属性2,属性3,,属性n) 例: student(学号,姓名,性别,年龄),候选键,26,关系模型中的常用术语,8候选键 关系中用来惟一标识一个元组的属性或属性组。 例1: 关系studen
11、t中的属性“学号”可以作为候选键,当“姓名”没有重名时,也可以作为候选键 例2: 确定如下关系score的候选键:学号 课号 成绩99001 C01 9099001 C02 8999002 C02 70 该关系中的候选键是属性组(学号,课号),主键和外键,27,关系模型中的常用术语,9主键 从候选键中指定一个用来标识元组。 10外部关键字 表中的一个字段不是本表的主关键字或候选关键字,而是另外一个表的主关键字或候选关键字,该字段称为外部关键字,简称外键。 例题: 在关系score中,候选键是属性组(学号,课号),“学号”不是score的主键,而是关系student的主键,因此,“学号”称为外键
12、。,主表和从表,28,关系模型中的常用术语,11主表和从表 主表: 以外键作为主键的表 从表: 外键所在的表 主表和从表通过外键相关联,关系模型的特点,29,7.3.2 关系模型的特点,1)每一列不可再分; 2)同一关系中属性(字段)不允许重名 3)关系中不允许有完全相同的元组 4)关系中交换任意两行的位置不影响数据的实际含义; 5)关系中交换任意两列的位置不影响数据的实际含义。,关系的基本运算,30,7.3.3 关系的基本运算,1选择 从指定的关系中选择满足给定条件的元组组成新的关系。 例题:从关系score1中选择数学大于90的元组组成关系S1。,投影运算,31,7.3.3 关系的基本运算
13、,2投影 从指定关系的属性集合中选取若干个属性组成新的关系。 例题:从关系score1中选择“学号”、“姓名”、“数学”组成新的关系S2。,联接运算,32,7.3.3 关系的基本运算,3联接 两个关系中的元组按指定条件组合新的关系 例题:将score1和score2按相同学号合并,设计关系模型,33,例题:由E-R图设计关系模型,1) 两个实体集学生(学号,姓名,性别,年龄)课程(课程代码, 课程名称, 任课教师)2) 联系选修(学号,课程代码,成绩) 两个实体集的主键 自身属性,Access的特点,34,结构化查询语言SQL简介、 1、 SQL的特点 (1)功能强大,包括了数据定义、数据查询
14、、数据操纵和数据控制等方面的功能,其核心是查询功能,可以完成数据库活动中的全部工作。 (2)语言是高度非过程化的语言,不必一步一步告诉计算机“如何去做”,只需告诉计算机“做什么” (3)简洁,用为数不多的几条命令实现强大的功能,接近英文自然语言,容易学习和使用。 (4)即可直接以命令方法交互使用,也可嵌入程序设计语言以程序方式使用。,35,2、SQL的命令分类,(1)用于数据定义:CREATE、DROP、ALTEP (2)用于数据修改:INSERT、UPDATE、DELETE (3)用于数据查询:SELECT(4)用于数据控制:GRANT、REVOKE 3、 SQL的查询命令 核心是查询,所有
15、查询都是利用SELECT命令来实现,其主要的组成部分通常是三块,构成的常用格式如下: SELECT用来指出查询的字段FROM 指出查询的数据来源WHERE 用来指出查询的条件,36,如:1、显示“学生”表中的记录: SELECT 学号,姓名,性别,年龄 FROM 学生2、显示“学生”表中年龄为20岁的女生记录SELECT * FROM 学生 WHERE 年龄=20 AND 性别=“女” 3、显示“学生”表中年龄为19-20岁之间的记录 SELECT * FROM 学生 WHERE 年龄=19 AND 年龄=20 或 SELECT * FROM 学生 WHERE 年龄 BETWEEN 19 AN
16、D 20 4、按年龄降序显示“学生”表中的所有记录SELECT * FROM 学生 ORDER BY 年龄 DESC 5、显示“学生”表中男生的姓名和年龄 SELECT 姓名,年龄 FROM 学生 WHERE 性别=“男”,37,7.4.1 Access的特点 界面简单,数据共享性强; 数据对象丰富,操作手段便捷; 具有功能强大的向导工具; 集成SQL功能; 提供多媒体功能; 提供Web功能;,Access启动,7.4 Access 简介,38,7.4.2 Access的启动,1.“开始”-“程序”-Microsoft Access 2.在对话框中选“空Access数据库”。 3.单击“确定” 4.输入数据库名 5.单击“创建”,数据库组成,39,7.4.3 数据库组成,Access数据库: 1)Access的文档文件,扩展名为MDB 2)由数据表、查询、窗体、报表、宏和模块等对象组成。 3)所有对象都保存在的同一个数据库文件中。,