1ACCESS2010数据库技术与应用2课程性质:限选课学习时间:8周计分方式:百分制期末考试70%平时成绩30%(考勤、实验报告)联系方式:zijun_mo@aliyun.com课程简介3第一章数据库基础知识本章主要内容1.1数据库系统概述1.2数据模型1.3关系数据库1.4数据库设计基础1.5ACCESS2010简介41.1数据库系统概述1.1.1数据管理的发展1.1.2数据库系统5数据存储在某一载体上、能够被识别的物理符号包括对事物特征的描述存储的形式6数据处理定义:对各种类型的数据进行收集、储存、分类、加工和传输的一系列活动的总和目的:从大量的、原始的数据中获得并提取我们所需要的有用的信息管理好数据信息,以便人们能随时提取和使用数据采集是基础,数据管理是核心7用电脑进行数据处理的步骤收集数据数据转换和代码化数据逻辑结构分析数据整理和输入数据收集数据转换结构分析数据输入数据存储数据输出数据操作新数据原始数据决策数据存储数据处理数据输出8数据管理技术的发展数据管理技术随着计算机软件和硬件技术的发展经历了三个阶段:人工管理阶段文件系统阶段数据库系统阶段分布式数据库系统面向对象数据库系统91.1.2数据库系统数据库系统(DataBaseSystem,DBS)指采用了数据库技术的完整的计算机系统——即以数据库应用为基础、实现有组织地、动态地存储大量关联数据、方便用户访问的计算机软硬件资源所组成的具有管理数据库功能的计算机系统。具体包括:硬件系统(CPU、内存、磁盘和I/O设备等)相关软件(OS、宿主语言和应用软件)数据库DB(DataBase)和数据库管理系统DBMS(DataBaseManagementSystem)人员(数据库管理员DBA(DataBaseAdministrator)、系统分析员、应用程序员和用户)10数据库系统DBS数据库管理员DBA用户1数据库DB数据库管理系统DBMS用户2用户N……111.2数据模型1.2.1数据模型的概念1.2.2E-R模型1.2.3常用的数据模型层次模型网状模型关系模型面向对象模型121.3关系数据库1.3.1关系模型1.3.2关系代数1.3.3关系完整性1.3.4关系数据库的规范化理论关系模型的组成关系数据结构所有数据的逻辑结构都是一张二维表关系操作集合包括关系运算以及增、删、改、查等数据操作关系的完整性约束数据库中的数据与现实世界中应用需求的数据之间的正确性、相容性和一致性数据库内,各数据之间的正确性、相容性和一致性1314数据:学生信息学号姓名年龄性别系名95001李钢19男计算机科学95002罗飞20男生物工程95003张明20女行政管理95004王雷21男行政管理记录字段15基本术语关系(Relation):一个关系就是一张二维表对关系的结构描述称为关系模式。其格式为关系名(属性名1,属性名2,…,属性名n)数据库中关系模式对应着二维表的表结构表名(字段名1,字段名2,…,字段名n)属性(Attribute):关系中垂直方向的列称为属性数据表中一个属性对应着一个字段,属性名即字段名元:关系模式中属性的数目称为关系的元数,又称为关系的目、度16基本术语元组(Tuple):关系中水平方向的行称为元组数据表中一个元组对应一条记录,一个关系就是若干个元组的集合域(Domain):属性的取值范围码(关键字Key):关系模型中的一个重要概念,表示为关系的一个属性或属性集17基本术语主关键字(PrimaryKey):表中某个属性或某些属性的集合,可以唯一确定一个元组外部关键字(ForeignKey):当一张二维表的主关键字被包含到另一张二维表中时,主关键字就称为是另一张二维表的外部关键字通过外部关键字,可以实现关系之间的动态联接18关系的类型基本表:关系数据库中独立存在的表,是实际存储数据的逻辑表示视图表:从基本表或其他视图中导出的表,是数据库的一部分查询表:根据指定条件对基本表进行查询所得的结果表19关系模式的特点关系中的每一个属性都是不可分解的,是最基本的数据单元(数据表中不能再包含表)一个关系中不允许有相同的属性名(一张表中不能出现重复的字段名)关系中不允许出现相同的元组(数据表中任意两行不能完全相同)关系中同一列的数据类型必须相同,即同一属性的数据具有同质性(数据表中任一字段的取值范围应属于同一个域)关系中行、列的次序任意(任意交换两行或两列的位置并不影响数据的实际含义)201.3.2关系代数传统的集合运算并、交、差、笛卡儿积专门的关系运算选择、投影、联接提示:关系运算的运算对象和运算结果都是关系211.3.3关系完整性指数据库中数据的正确性、一致性和相容性三类完整性约束实体完整性参照完整性用户自定义完整性实体完整性和参照完整性是关系数据库必须满足的完整性约束条件,被称为是关系的两个不变性,由关系数据库管理系统自动支持221.3.4关系数据库的规范化理论第一范式(1NF)实体中的某个属性不能有多个值实体中不能有重复属性第二范式(2NF)满足第一范式的前提下,表中所有非主键字段完全依赖于主关键字段第三范式(3NF)满足第二范式的前提下,表中所有非主键字段均不传递依赖于主键23不满足3NF的表,通常存在如下问题:冗余度高插入异常删除异常修改麻烦一个满足3NF的关系,可以在一定程度上解决上述四个问题241.4数据库设计基础1.4.1数据库设计的内容数据库的结构设计数据库应用系统的功能设计1.4.2数据库设计步骤设计原则设计步骤需求分析确定需要的表确定所需字段确定联系设计求精1.5ACCESS2010简介面向对象的、采用事件驱动的新型关系型数据库管理系统提供了丰富的可视化操作工具及操作向导为开发者提供了丰富的内置函数及VBA(VisualBasicforApplication)编程功能支持ODBC,可与其他主流商用数据库(Oracle、Sybase、VisualFoxPro等)相连,实现数据交换和共享支持与Word、Outlook、Excel等其他软件进行数据的交互和共享2526导航窗格27数据库对象的不同显示方式28「文件」「选项」选项卡式文档29重叠窗口式文档30功能区——「开始」选项卡31功能区——「创建」选项卡32「上下文命令」选项卡功能区——「外部数据」选项卡33功能区——「数据库工具」选项卡34快速访问工具栏3536ACCESS数据库的系统结构6大数据对象表查询窗体报表宏模块37数据库对象之间的关系表查询报表窗体宏模块来源来源来源来源来源强化功能来源强化功能强化功能383940人工管理阶段时间:50年代初期计算机硬件:磁带、卡片、纸带计算机软件:汇编语言计算机处理速度慢,没有存储设备,没有专门管理数据的软件应用程序和数据之间结合相当紧密,每处理一批数据,都要特地为这批数据编制相应的应用程序41人工管理阶段图解42人工管理阶段的特点数据无法保存、无法共享数据由应用程序自己管理数据与程序存在一一对应关系,数据不具有独立性:数据所发生的任何修改,都导致其对应的应用程序必须做出相应修改43文件系统阶段时间:50年代后期~60年代中期计算机硬件:磁盘、磁鼓计算机软件:文件管理系统、数据文件主要优点:数据可以以文件的形式长期保存程序和数据之间有一定的独立性由专门的软件(文件管理系统)进行数据管理,应用系统通过管理系统与数据文件发生联系44文件系统阶段图解应用程序1数据文件1文件系统应用程序2数据文件2……应用程序n数据文件n45文件系统阶段的缺点数据冗余度大数据面向应用程序,对需要相同数据的其他应用程序,只能重复存储数据,造成大量数据冗余数据的不一致性数据更新由每个程序自己进行,同一数据间没有一致性保护措施数据依赖性应用程序的编制必须依赖数据的存储形式46数据库系统阶段时间:60年代后期以后计算机硬件:大容量、快速存取的磁盘计算机软件:数据库管理系统出现47数据库系统阶段的优点数据共享(多个用户同时存取/使用多种语言读写数据)具有最低的冗余度具有较高的数据独立性(逻辑独立性/物理独立性)具有统一的数据控制功能(安全性、完整性、并发控制、数据恢复等)由专门的数据管理软件即数据库管理系统对数据进行统一管理48数据库管理系统的主要功能数据定义数据操纵数据库的运行管理和控制数据的组织、存储和管理数据库的建立和维护数据通信接口49数据库系统的内部结构体系数据库的三级模式概念模式外模式内模式数据库系统的的二级映射逻辑映射物理映射50应用程序1应用程序2应用程序3应用程序n外模式1(用户数据库)外模式2(用户数据库)外模式n(用户数据库)概念模式(概念数据库)内模式(物理数据库)数据库逻辑映射物理映射…………数据库的系统结构图51数据模型的组成要素数据结构对系统静态特性的描述,包含所有被研究的对象类型数据操作对系统动态特性的描述,包含该数据模型中各种对象允许执行的所有操作数据的约束条件完整性规则的集合,给定数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容521.2.1数据模型的概念数据模型的组成数据模型的分类概念数据模型:面向客观世界、面向用户,与具体的数据库管理系统及具体的计算机平台无关,是整个数据模型的基础。较为有名的概念模型有E-R模型逻辑数据模型:面向数据库系统,着重于在数据库系统一级的实现。数据库领域中最常用的逻辑数据模型为:层次模型、网状模型、关系模型和面向对象模型物理数据模型:面向计算机物理表示,给出了数据模型在计算机上物理结构的表示531.2.2E-R模型概念模型:按用户的观点对数据和信息建模,使用易于理解的概念、符号、表达方式来描述事物及其联系。最常见的是实体-联系模型(E-R模型)实体:客观存在并可相互区别的事物称为实体,可以是具体的人、事、物,也可以是抽象的概念或联系属性:实体所具有的某一特性。一个实体可以有若干个属性来刻画541.2.2E-R概念模型码:唯一标识实体的属性或属性集域:属性的取值范围联系:反映实体内部和外部之间的联系实体的内部联系主要表现在实体内部各属性之间的联系实体外部之间的联系分成三类:一对一联系、一对多联系、多对多联系一对一联系实体集A中的每一个实体,在实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系。记为1:1551.2.2E-R模型一对多联系实体集A中的每一个实体,在实体集B中有n(n≥0)个实体与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系。记为1:n多对多联系实体集A中的每一个实体,在实体集B中有n(n≥0)个实体与之联系,反之,实体集B中的每一个实体,在实体集A中也有m(m≥0)个实体与之联系,则称实体集A与实体集B具有多对多联系。记为m:n说明:一对一联系是一对多联系的特例,而一对多联系又是多对多联系的特例56E-R模型的表示方法实体-联系方法:用E-R图来描述现实世界的方法。E-R图提供了表示实体型、属性和联系的方法实体型:用矩形表示,矩形框内写明实体名属性:用椭圆形表示,用实线将其与对应的实体联系起来学生学号姓名性别专业编号出生日期57E-R模型的表示方法联系:用菱形表示,菱形框内写明联系名,并用实线与有关实体连接起来,同时在旁标上联系的类型(1:1、1:n、m:n)11身份证号投票选票号码1n身份证号申请银行卡银行卡号mn学生选修课程58层次模型有且仅有一个结点位于最高层,称为根结点。根结点只有子结点(下层结点),没有父结点(上层结点、双亲结点)其他结点有且仅有一个父结点(上层结点、双亲结