第2章数据基础知识 2.1数据库基本概念 2.1.1数据库技术的发展

Slides:



Advertisements
Similar presentations
7.2 数据模型 大学计算机基础. 7.2 数据模型 主要内容 数据模型简介 常用数据模型 常见数据库系统及开发工具.
Advertisements

数据结构的引入. 通讯录管理 社团机构管理 校园导航管理 通讯录管理 社团机构管理 校园导航管理.
数 据 库 基 础 授课:40学时 实验:20学时 徐 旭 袁平波
2012年9月等级考试辅导 数据库设计基础.
Access数据库基础与应用(第2版).
数据库系统概论 第一章 绪论 An Introduction to Database Systems
Visual FoxPro程序设计与应用.
复习: :对任意的x∈A,都有x∈B。 集合A与集合B间的关系 A(B) A B :存在x0∈A,但x0∈B。 A B A B.
第七章 数据库基础 7.1 数据库系统概述 7.2 数据库的建立和维护.
程序设计 Visual FoxPro 任课教师:王永红 湖南城市学院信息与计算机科学系 普通高等教育“十一五”国家级规划教材
数据库原理与应用 (Visual FoxPro 9.0版)
初级会计电算化 (用友T3) 制作人:张爱红.
Access数据库基础 系列教学课件 安丘市职业中专 雷云龙.
第二章 关系数据库 2.1 关系模型概述 2.2 关系数据结构 2.3 关系的完整性 2.4 关系代数 2.5 关系演算 2.6 小结.
An Introduction to Database System An Introduction To Database System
数据库原理与应用 计算机与信息工程学院 1/.
第1章 数据库基础知识 1.1 数据处理技术的发展 1.2 数据抽象与模型 1.3 关系模型.
高级数据库技术 金培权
数据库原理与应用.
数据库原理与应用 01 – 绪论 郑捷.
Database Principles & Applications
第5章 数据库基础 5.1 数据库系统概述 5.2 数据模型 5.3 关系模型 5.4 关系数据库 5.5 常见的关系数据库管理系统简介.
Oracle数据库 Oracle 子程序.
数据库原理 Database Principles 第五章 数据库完整性 Database Principles.
第2章 关系数据库系统.
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
在PHP和MYSQL中实现完美的中文显示
《Visual FoxPro程序设计基础》
《数据库原理及应用》课程介绍 信息工程学院 孙俊国
面向对象建模技术 软件工程系 林 琳.
走进编程 程序的顺序结构(二).
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
An Introduction to Database System
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
第17章 网站发布.
数据库设计是信息系统的核心组成部分 从现实世界到数据世界的转换的过程
数据库应用技术 SQL Server 2005.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
第4章 非线性规划 4.5 约束最优化方法 2019/4/6 山东大学 软件学院.
1.1 数据库基本概念 1.2 数据模型 1.3 关系数据库 1.4 Access2010简介
数据库系统概论 An Introduction to Database System
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
An Introduction to Database System An Introduction to Database System
C语言程序设计 主讲教师:陆幼利.
EBNF与操作语义 请用扩展的 BNF 描述 javascript语言里语句的结构;并用操作语义的方法描述对应的语义规则
微机系统的组成.
线 性 代 数 厦门大学线性代数教学组 2019年4月24日6时8分 / 45.
VisComposer 2019/4/17.
商业分析平台-语义元数据 用友集团技术中心 边传猛 2013年 11月 06日.
VB与Access数据库的连接.
项目二:HTML语言基础.
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
第4章 Excel电子表格制作软件 4.4 函数(一).
第九节 赋值运算符和赋值表达式.
1.把下面的关系模式转化为E-R图 1)系(系号,系名,电话) 2)教师(工号,姓名,性别,年龄,系号)
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
Visual Basic程序设计 第13章 访问数据库
魏新宇 MATLAB/Simulink 与控制系统仿真 魏新宇
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
第六章 Excel的应用 五、EXCEL的数据库功能 1、Excel的数据库及其结构 2、Excel下的数据排序 (1)Excel的字段名行
基于列存储的RDF数据管理 朱敏
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
VB与Access数据库的连接.
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
WEB程序设计技术 数据库操作.
第三节 数量积 向量积 混合积 一、向量的数量积 二、向量的向量积 三、向量的混合积 四、小结 思考题.
入侵检测技术 大连理工大学软件学院 毕玲.
Chapter 14 Databases.
§2 自由代数 定义19.7:设X是集合,G是一个T-代数,为X到G的函数,若对每个T-代数A和X到A的函数,都存在唯一的G到A的同态映射,使得=,则称G(更严格的说是(G,))是生成集X上的自由T-代数。X中的元素称为生成元。 A变, 变 变, 也变 对给定的 和A,是唯一的.
Presentation transcript:

第2章数据基础知识 2.1数据库基本概念 2.1.1数据库技术的发展 进入21世纪以来,数据库技术的应用发生了巨大的变化,主要表现在新技术,应用领域和数据模型3个方面。数据库技术发展的核心是数据模型的发展,随着信息管理内容的不断扩展,出现了丰富多彩的数据模型。

第2章数据基础知识 2.1数据库基本概念 2.1.1数据库技术的发展 数据处理技术经历了:人工管理阶段、文件系统阶段、数据库系统阶段和高级数据库阶段。 在数据库阶段,其技术发展经历了3代:第1代是以网状、层次模型为代表的数据库系统、第2代是关系数据库系统、第3代是以面向对象模型为主要特征的数据库系统。

第2章数据基础知识 2.1数据库基本概念 2.1.1数据库技术的发展 随着数据模型的出现,新技术也层出不穷如“数据流”等。它们都应满足3方面要求: (1)能比较真实地模拟现实世界。 (2)是容易被人们所理解。 (3)是便于在计算机上实现。

2.1数据库基本概念 2.1.2数据库的基本概念 1、 数据:是人们用于描述客观事物的物理符号。是数据库中存储的基本对象。如文字、图形、图像、声音等。 2、数据库(DB):是数据的集合,它具有一定的逻辑结构并储存于计算机存储器上,具有多种表现形式并可被各种用户所共享。

2.1数据库基本概念 3、数据库管理系统(DBMS):是一个系统软件,负责数据库中的数据组织、操纵、维护、控制、保护和数据服务等,是核心。 主要提供以下功能: ①数据定义功能:结构定义与修改。 ②数据库的建立和维护功能:初始数据的输入,转换功能,数据库的转储,恢复功能, ③数据操纵及查询优化 ④数据库的运行管理

2.1数据库基本概念 4、数据库系统(DBS) 通常是指带有数据库的计算机应用系统。它一般由数据库,数据库管理系统,应用系统,数据库管理员和用户组成。 在不一起混淆的情况下常把数据库系统简称为数据库。

2.1数据库基本概念 它一般由数据库、数据库管理系统、应用系统、数据库管理员和用户组成。 2.1.3数据模型 数据模型用于表示事物以及事物之间的联系,数据模型是用来抽象、表示和处理现实世界的数据和信息的工具,数据模型是数据库系统的核心和基础,现有的数据库系统均是基于某种数据模型的。

2.1数据库基本概念 数据模型有3个基本要素:数据结构、数据操作和完整性约束。 数据库技术中常见的数据模型有4种: 1、层次模型:用树型结构表示实体间联系的数据模型

2.1数据库基本概念 层次模型的主要特征: (1)仅有一个无双亲的结点,这个结点称为根结点。 (2)其他结点向上仅有一个双亲结点,向下有若干子女结点。 层次模型就想一颗倒置的树,根结点在上,层次最高;子女结点在下,逐层排列。同一双亲的子女结点称为兄弟结点,没有子女结点的结点称为子结点。

2.1数据库基本概念 2、网状模型 现实世界中的有些问题,可能不符合层次模型的要求,可以使用网状模型来描述。

2.1数据库基本概念 网状模型的主要特征: (1)有一个以上的结点无双亲。 (2)一个结点可以有多个双亲。 在网状模型中,子女结点与双亲结点的联系可以不唯一。因此,要为每个联系命名,并指出与该联系有关的双亲记录和子女记录。

2.1数据库基本概念 3、关系模型 用二维表格结构表示实体以及实体之间联系的数据模型称为关系模型。有以下常用术语: 关系(Relation):一个关系对应一张二维表。 元组(Tuple):表中的一行称为一个元组。 属性(Attribute):表中的一列称为一个属性,给每列起一个名称,该名称就是属性名。 域(Domain):属性的取值范围。 关键字或主码(Primary Key):能够惟一地标识一个元组的属性或属性组。 关系模式:是对关系的描述。

2.1数据库基本概念 关系模式(Relation mode):关系的描述,用关系名(属性名1,属性名2,…,属性名n)来表示。 用关系模式表示实体,实体名用关系名表示,实体的属性对应关系的属性。 关系模型的主要特点: ①关系中的每一数据项不可再分,也就是说不允许表中还有表。 ②每一列中的各个数据项具有相同的属性。

2.1数据库基本概念 ③每一行中的记录由一个事物的多种属性项构成。 ④每一行代表一个实体,不允许有相同的记录行。 ⑤行与行、列与列的次序可以任意交换,一改变关系的实际意义。

2.1数据库基本概念 4、面向对象数据模型 面向对象模型是近几年发展起来的一种新兴的数据模型。根据面向对象建立的数据库,采用了面向对象程序设计方法的思想和观点,来描述现实世界实体的逻辑组织和对象之间的联系,面向对象核心概念构成了面向对象数据模型的基础。

2.1数据库基本概念 4、面向对象数据模型 基本概念: ①对象:现实世界中的任何实体都可以统一地用对象来表示。每一个对象都有它唯一的标识,称为对象标识。 ②类:所有具有相同属性和操作的对象构成一个对象类。任何一个对象都是某一对象类的一个实例。 ③事件:客观世界中的所有动作都是由对象发出且能够为某些对象所接受,我们把这样的动作产生称为事件。

2.1数据库基本概念 2.1.4关系数据库 1、关系模型的组成 关系模型由关系数据结构、关系操作和关系完整性约束3部分组成。 关系数据结构:关系模型中数据的逻辑结构就是一张二维表的形式。这种简单的数据结构几乎能够包含所有信息的形式,可描述出现实世界的实体以及实体间的各种联系。 例如:一个工作任务可以建立一个数据库,在数据库中可以包含若干个表,每张表可以存放不同方面的数据。

2.1数据库基本概念 2.1.4关系数据库 1、关系模型的组成 关系完整性约束:关系数据模型的操作必须满足关系的完整性约束条件。 它可以保证数据库中数据的正确性和一致性,关系的完整性约束条件包括实体完整性,参照完整性和用户定义完整性。 其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,用户定义完整性是用户针对某一具体应用领域提出的约束条件。

2.1数据库基本概念 2.1.4关系数据库 1、关系模型的组成 关系操作:关系操作采用关系代数的集合运算,即操作的对象和结果都是数据集合。 关系模型中常用的关系操作包括两类: (1)查询操作:选择,投影,联接,除,并,交,差等。 (2)增加操作,删除操作,和修改操作。

2.1数据库基本概念 2、关系运算 关系的基本运算有两类,一类是传统的集合运算:并、差、交等;另一类是专门的关系运算:选择、投影、联接等。 并:R和S的结果是由属于R或属于S的元组组成的新关系,运算符是“U”记为RUS。 交:R和S的结果是由即属于R又属于S的元组组成的新关系,运算符是“∩”记为R ∩ S。 差:R和S的结果是由属于R但不属于S的元组组成的新关系,运算符是“-”记为R-S。

2.1数据库基本概念 A B C a1 a2 b1 b2 c1 c2 b3 (a) 关系R (b) 关系S

2.1数据库基本概念 A B C a1 a2 b1 b2 b3 c1 c2 (1) RUS (2) R∩S

2.1数据库基本概念 A B C a1 b3 c2 (3) R-S

2.1数据库基本概念 练习1: 集合A={12,10,15,6,7,4} 集合B={2,4,6,8,10,12} 求(1)AUB

2.1数据库基本概念 练习2: 集合A={北京,上海,天津,云南,长春,深圳} 集合B={天津,甘肃,云南,上西} 求(1)AUB

2.1数据库基本概念 选择运算:选择关系中满足一定条件的元组。 从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表达式给出的,值为真的元组将被选取。 投影运算:选取关系中的某些列,并且将这些列组成一个新的关系。从关系模型中挑选若干属性组成新的关系称为投影。 联接运算:选择和投影运算都属于一目运算,它们的操作对象只是一个关系。联接运算是二目运算,需要两个关系作为操作对象。

2.1数据库基本概念 例1设有一个学生课程数据库,包括学生关系student,课程关系course,选课关系sc student 学号 sno 姓名 sname 性别 ssex 年龄 sage 所在系 Sdept 95001 李勇 男 20 Cs 95002 刘晨 女 19 Is 95003 王敏 18 Ma 95004 张立

2.1数据库基本概念 Course 课程号 cno 课程名 cname 先行课 cpno 学分 Ceredit 1 数据库 5 4 2 数学 SC Course 课程号 cno 课程名 cname 先行课 cpno 学分 Ceredit 1 数据库 5 4 2 数学 3 信息系统 操作系统 6 数据结构 7 数据处理 PASCAL语言 学号 课程号 成绩 sno cno Grade 95001 1 92 2 85 3 88 95002 90 80

2.1数据库基本概念 选择运算 条件:学号=“95001” 结果: 学号 sno 姓名 sname 性别 ssex 年龄 sage 所在系 Sdept 95001 李勇 男 20 Cs

2.1数据库基本概念 投影运算 条件:学号,姓名 结果: 学号 sno 姓名 sname 95001 李勇 95002 刘晨 95003 条件:学号,姓名 结果: 学号 sno 姓名 sname 95001 李勇 95002 刘晨 95003 王敏 95004 张立

2.1数据库基本概念 联接运算 条件:course.cno=sc.cno 结果: 学号 sno 4 1 信息系统 3 2 数学 5 数据库 学分 Ceredit 先行课 cpno 课程名 cname 课程号 cno 95002 95001 80 88 90 85 92 grade

2.1数据库基本概念 例:设关系R和S分别如下: R S A B C D E a1 b1 5 3 b2 6 7 a2 b3 8 10 b4 12 2 b5

2.1数据库基本概念 等值连接r.b=s.b 自然连接 A R.B C S.B E A R.B C E a1 b1 5 b1 3 a1 b1 5 3 a1 b2 6 b2 7 a1 b2 6 7 a2 b3 8 b3 10 a2 b3 8 10 a2 b3 8 b3 2 a2 b3 8 2

2.1数据库基本概念 3、关系数据库系统的功能 ①数据定义功能 ②数据处理功能 ③数据控制功能 ④数据维护功能

2.2关系数据库使用的语言 2.1关于VBA VBA是Access中的内置语言,VBA的语法与独立运行的Visual Basic 编程语言相互兼容。VBA是一套完整的应用程序开发环境,用户可用Visual Basic 语言来编写程序,完成对数据库的设计。 VBA是一种面向对象的语言。VBA为用户和开发人员提供了一种应用程序间通用的语言,减少了学习时间;而且VBA也为开发人员提供一种开发方法,进一步深入发挥Access的强大功能,全面提高使用Access工作的自动化水平,用于开发集成多个应用程序的系统,还可以开发中小型的管理信息系统。

2.2关系数据库使用的语言 2.1关于VBA Access中的VBA程序由模块组成。模块中包含一系列语句和方法,以执行操作或计算数值。模块是将VBA声明和过程作为一个单元进行保存的集合。 模块有连个基本类型:类模块和标准模块 模块中的每一个过程都可以是一个函数过程或一个子过程。 VBA中包含了很多的内置函数,用户还可以创建自己的自定义函数,创建自定义函数以后,就可以在Access任何地方的表达式中使用该函数。

2.2关系数据库使用的语言 2.1关于VBA 使用VBA,可以使数据库易于维护。因为Visual Basic事件过程创建在窗体或报表的定义中,如果把窗体或报表从一个数据库移动到另一个数据库,则窗体或报表所带的事件过程也会同时移动。 在Access中提供的VBA开发界面称为VBE。VBE实际上是一个集编辑,调试,编译等功能于一体的编辑环境。

2.2关系数据库使用的语言 2.2.2关于SQL 1、SQL的特点 (1)SQL是一种功能齐全的数据库语言。 SQL语言主要包括以下4类:数据定义,数据操纵,数据查询,数据控制.SQL语言可以独立完成数据库中的全部操作,包括定义关系结构,数据维护,查询,更新和完整性约束等一系列操作。

2.2关系数据库使用的语言 (2)SQL是高度非过程化的语言。 SQL是按照用户习惯去指导操作的完成方式,而用户不必考虑怎么做的问题。因此用户无须了解语言的执行过程和路径,SQL语言的操作过程及路径选择均有系统自动完成。这不但大大减少了用户负担,而且有利于提高数据的独立性和安全性。

2.2关系数据库使用的语言 (3) SQL语言简洁。 (4)语言共用。 SQL语言在任何一种数据库管理系统中都是相似的,甚至是相同的。

2.2关系数据库使用的语言 2、 SQL的数据查询和数据操纵功能 (1)数据查询 SQL语言提供Select语句进行数据库的查询,其功能是实现数据源数据的筛选,投影和联接操作,并能够完成筛选字段重命名,多数据源数据组合,分类汇总等具体操作。 (2)数据操纵 SQL的操作功能是指对数据库中数据进行操纵的功能,包括数据的插入、修改和删除等。

2.3数据库设计概念 2.3.1数据库关系完整性设计 1、实体完整性规则 实体完整性规则:若属性A是基本关系R的主码,则属性A不能取空值。 实体完整性规则规定基本关系的所有主属性都不能取空值,而不仅是主码整体不能取空值。

2.3数据库设计概念 2、参照完整性规则:若属性(或属性组)F是基本 关系R的外码,它与基本关系S的主码K相对应 (基本关系R和S不一定是相同的关系),则R 中的每个元组在F上的值必须如下: (1)、或者取空值(F的每个属性值均为空值) (2)、或者等于S中的某个元组的主码值。 参照完整性规则就是定义外码与主码之间的引 用规则。

2.3数据库设计概念 3、用户定义完整性 用户定义的完整性就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。关系模型应提供定义和检验这类完整性规则的机制,其目的是用统一的方式由系统来处理他们。

2.3数据库设计概念 2.3.2数据库规范化设计 关系数据库中的关系要满足一定要求,满足不同程度要求的为不同范式。目前遵循的主要范式包括第一范式,第二范式,第三范式和第四范式等。 规范化设计过程的目的是减少冗余数据,提供有效的数据检索方法,避免不合理的插入,删除,修改等操作,保持数据一致性,增强数据库的稳定性,伸缩性和适应性。

2.3数据库设计概念 2.3.2数据库规范化设计 1、第一范式 关系模式R的所有属性均为简单属性,即每个属性都是不可再分的,则称R属于第一范式。 2、第二范式 关系模式R满足第一范式,R中的所有非主属性都完全依赖于主码,则称关系R属于第二范式。 3、第三范式 关系模式R满足第二范式,R中的所有非主属性都不传递信赖于主码,则称关系R属于第三范式。

2.3数据库设计概念 2.3.3数据库应用系统设计方法 1、需求分析 ①系统要处理的数据,经过分类后提交给数据库保存的数据表:学生情况表,学生成绩表,课程表,任课教师表等。 ②完成数据的维护功能。当学生,教师,课程等情况发生变化或数据录入错误时,实时保证数据表中数据的正确性和一致性。 ③实现各种信息查询功能。包括学生成绩查询,学生情况查询。 2、应用系统的数据库设计 首先要弄清需要存储哪能些数据,确定需要几个数据表,每一个表中包括几个字段等,然后在Access中建立数据表。

2.3数据库设计概念 2.3.3数据库应用系统设计方法 2、应用系统的数据库设计 首先要弄清需要存储哪能些数据,确定需要几个数据表,每一个表中包括几个字段等,然后在Access中建立数据表。 3、应用系统的功能设计 根据需求分析,结合初步设计的数据库模型,设计应用系统的各个功能模块。学生管理系统中应包括哪些功能模块。

2.3数据库设计概念 4、系统的性能分析 软件初步形成后,需要对它进行性能分析,如果有不完善的地方,要根据分析结果对数据库进行优化,直到应用软件的设计满足用户的需要为止。 5、系统的发布与维护 系统经过调试满足用户的需要后就可以进行发布,但在使用过程中可能还会存在某些问题,因此在软件运行期间要进行调整,以实现软件性能的改善和扩充,使其适应实际工作的需要。