版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第8章数据库技术1内容摘要1.数据库技术概述2.数据库管理系统的结构与功能3.数据库系统的组成与功能4.关系数据库在Access中的实现22为什么要学数据库知识在银行存款在超市购物在图书馆借书预订机票……3管理商品信息管理供应商信息实现收款结算自动化总结商品销售规律挖掘有价值的商业信息……3数据(data)与信息(information)数据的定义是指一切能被计算机存储和处理,反映客观实体信息的物理符号,是信息的载体。数据的表现形式有数字、文字、图形、表格、声音、图像以及动画等。信息的定义是指有一定含义的、经过加工的、对决策有价值的数据。信息的特征:可感知、可理解、可传递、可存储。4数据处理(dataprocessing)
数据处理是指将数据转换成信息的过程,即为了产生信息而处理数据,包括对数据的收集、存储、加工、检索、传输等一系列活动。其目的是从大量的原始数据中抽取和推导出有价值的信息,作为决策的依据。数据处理数据信息数据处理的历史算盘、手摇计算机穿孔机、卡片机、制表机电子计算机5计算机时代的数据处理人工管理阶段文件系统阶段数据库系统阶段时间:20世纪50年代中期以前应用范围:科学计算硬件条件:计算机外存只有卡片、纸带和磁带等顺序存取设备,没有磁盘等直接存取设备软件条件:只有汇编语言,没有操作系统和管理数据的软件数据处理方式:批处理时间:20世纪50年代后期~20世纪60年代中期应用范围:科学计算;企业信息管理硬件条件:计算机外存有磁盘、磁鼓等直接存取设备软件条件:出现了高级语言和操作系统(包括文件系统)时间:20世纪60年代末应用范围:多用户、多应用的数据共享硬件条件:网络及大容量磁盘的出现,硬件价格下降软件条件:软件价格上升,开发和维护系统软件的成本增加6数据库的发展层次网状关系实体联系语义面向对象扩展的关系(对象/关系)第一代数据库第二代数据库第三代数据库7数据库技术发展的新方向数据库技术多媒体技术分布式处理技术移动计算技术Web技术人工智能地理信息系统……多媒体数据库分布式数据库嵌入式移动数据库Web数据库演绎数据库空间数据库……8数据库管理系统(DBMS)指帮助用户创建和管理数据库的应用程序集合。用户在数据库系统中的一切操作,包括定义、构造、操纵等,都是通过DBMS进行的。9DBMS的功能数据定义书写的数据库的逻辑结构、完整性约束和物理储存结构。数据操纵用户可通过使用DML实现对数据的查找、修改、插入和删除。数据的组织、存储和管理对各种数据进行分类,并提供各种数据在外围储存设备上的物理组织与存取方法。数据库运行管理在数据库运行时DBMS对所有操作实施管理和监控。数据的建立与维护提供了初始数据的输入、转换程序以及为数据库管理员提供日常维护的软件工具。10DBMS的层次结构应用层语言翻译处理层数据存取层数据存储层操作系统最终用户和应用程序数据库管理系统DBMS与终端用户和应用程序的界面层,处理的对象包括各种各样的数据库应用,如一些应用程序、最终用户通过应用接口发来的事务请求等。处理的对象是数据语言。该层对数据库语言的各类语句进行语法分析、视图转换、授权检查、完整性检查、查询优化等。处理的对象是单个元组。它将上一层基于集合的操作转换为基于单记录的操作,并完成数据记录的存取、存取路径的维护、并发控制、事务管理等工作。处理的对象是数据页和系统缓冲区,使用操作系统提供的基本存取方法执行数据的物理文件的读写操作。11常见的DBMS典型的实验系统SystemRUniversityINGRES典型的商用系统DB2OracleSybaseMicrosoftSQLServerMicrosoftAccessMySQL大型中型小型12数据库系统的组成计算机存储设备DBDB……DBDBMSDBA应用程序操作系统最终用户最终用户计算机系统……13数据模型设计者、程序员、终端用户以不同的方式看待数据用哪种表现形式描述数据,是文字?数值?还是声音?图形?对象?用哪种结构方式描述数据之间的联系?是层次?网状?还是关系?数据模型是三者沟通的桥梁数据模型是数据库的框架数据模型设计者程序员终端用户1415实体(entity)
客观存在可以相互区别的事物。可以是可触及的对象,也可以是抽象的事件,如一堂课,一次比赛等。
属性(attribute)
实体所具有的特征。例如,学生有学号、姓名、性别等属性。
域(domain)
属性可取值的范围。例如,“性别”属性的域为“男/女”。键(key)实体属性集中能唯一区分每个实体的最小的属性集。例如,学生实体的学号属性。16实体间的联系
一对一联系系情况表编号名称系主任编号
…系主任情况表教师编号姓名性别出生日期系编号联系方式1:117实体间的联系
一对多联系学生情况表学号姓名性别出生日期班级编号联系方式班级表班级编号班级名称N:118实体间的联系
多对多联系学生选课情况表学号姓名性别选课编号课程情况表课程编号名称任教老师选课学生M:N19数据库系统概述数据模型关系数据库概述关系数据库中的数据采用的是关系数据模型,其数据的基本结构是表(Table),又称为二维表。20数据库系统概述学生表学号姓名性别党员专业出生年月课程成绩990001王涛男No物理82-01-21大学计算机基础82990001王涛男No物理82-01-21高等数学76990002庄前女Yes物理82-09-21大学计算机基础90990101丁保华男No数学81-04-18高等数学77990102姜沛棋女No数学81-12-02大学计算机基础68990102姜沛棋女No数学81-12-02C/C++程序设计85990102姜沛棋女No数学81-12-02大学英语56………………………………数据模型关系数据库概述21数据库系统概述数据模型关系数据库概述学生基本信息表学号姓名性别党员专业出生年月990001王涛男No物理82-01-21990002庄前女Yes物理82-09-21990101丁保华男No数学81-04-18990102姜沛棋女No数学81-12-02990103张智忠男No数学80-08-06990201程玲女Yes计算机82-11-14990202黎敏艳女Yes计算机83-02-21990203邓倩梅女Yes计算机82-04-28
学生成绩表学号课程成绩990001大学计算机基础82990001高等数学76990002大学计算机基础90990101高等数学77990102大学计算机基础68990102C/C++程序设计85990102大学英语56……………22数据库系统概述数据模型关系数据库概述课程表课程号课程1001大学计算机基础2001高等数学3002C/C++程序设计1002大学英语3010计算机导论…………专业表专业号专业301数学302物理303计算机102英语405会计…………23数据库系统概述数据模型关系数据库概述学生基本信息表学号姓名性别党员专业号出生年月990001王涛男No30282-01-21990002庄前女Yes30282-09-21990101丁保华男No30181-04-18990102姜沛棋女No30181-12-02990103张智忠男No30180-08-06990201程玲女Yes30382-11-14990202黎敏艳女Yes30383-02-21990203邓倩梅女Yes30382-04-28学生成绩表学号课程号成绩990001100182990001200176990002100190990101200177990102100168990102300285990102100256……………24数据库系统概述数据模型关系数据库的基本概念关系——一个关系在逻辑上对应一个按行、列排列
的二维表,每个关系有一个关系名。属性——二维表中的列,或称字段(Field),每一
列有一个属性名或称字段名。记录——二维表中的一行称为一条记录(Record),
又称为元组。25数据库系统概述数据模型关系数据库的基本概念值域——属性的取值范围。例如,性别属性的取值
范围是“男”或“女”。主键(Key)——属性或属性组合,其值能够唯一地
标识元组。例如学生表的主键为
“学号”、成绩表的主键为“学号”+
“课程号”。26数据库系统概述数据模型关系模式对关系的关系名及属性的描述称为关系模式,其格式为:关系名(属性1,属性2,…,属性n)例如,学生表的关系模式为:学生表(学号,姓名,性别,籍贯,出生日期,入学总分,爱好特长)27关系数据库的建立Access是一种关系型数据库管理系统,它提供了一套完整的工具和向导,使用户通过可视化的操作来完成大部分的数据库管理和开发工作。
28Access数据库的组成一个Access数据库中包含了7种不同的对象:表查询窗体报表页宏模块29Access表达式Access的常用运算符
Access的常用运算符包括:算术运算符——+、-、*、/、^、\、Mod关系运算符——=、>、<、<>、<=、>=逻辑运算符——Not、And、Or字符运算符
——&特殊运算符
——
…Between…And…、Like、In、Is30Access表达式Access的常用运算符说明:在表达式中,字符常量用"
号或'
号括起来,日期常量用#
号括起来;Mod为取余数运算符;Between运算符的格式为:…Between…And…;Like运算符通常与?
和*结合使用,用于模糊查询;In运算符用于确定某字符串值是否在一组字符串值内。31Access表达式Access表达式示例字段有效性规则中的表达式:<>0输入一个非零值;0Or>100值必须为0或大于100;Like“K???”值必须为以字母K开头的四个字符;<#1/1/2009#输入早于1/1/2009的日期;>=#1/1/2009#And<#1/1/2010#输入2009年的日期。32Access表达式Access表达式示例向查询提供条件的表达式:字段表达式结果性别"男"查找男教授和男副教授的记录;职称Like"*教授"出生日期Between#1990-1-1#And#1999-12-31#查找20世纪90年代出生的人员记录;姓名Like"陈*"查找姓陈的人员记录;33Access表达式Access表达式示例向查询提供条件的表达式:字段表达式结果姓名NotLike"陈*"或Like"[!陈]*"查找不姓陈的人员记录;姓名Like
"[陈李高]*"查找姓陈、姓李和姓高的人员记录;编号In
("T101","T102","T105","T108")查找编号为T101、T102、T105
和T108
的人员记录。34数据库的建立和维护Access数据库的组成表(Table)表是最基本的对象,是有关特定实体的数据的集合,以记录、字段格式组织数据。
Access允许在数据库的多个表之间定义关系。35数据库的建立和维护Access数据库的组成查询(Query)查询是对数据库中数据的直接访问。利用查询可以通过不同的方式来查看、更改、分析以及操纵数据库中的数据,也可以为其他查询、窗体和报表提供数据,还可以为一个数据访问页提供数据源。36数据库的建立和维护Access数据库的组成窗体(Form)窗体是用户交互式访问数据库的界面,是数据库与用户之间的主要接口。使用窗体可以容易、直观地向表输入数据、查看或更新表的数据,以及根据用户的输入信息执行相应的操作。37数据库的建立和维护Access数据库的组成报表(Report)报表是输出数据库数据的有效方法。在报表中可以控制每个数据的显示方式、对数据进行排序和分组、给出每组记录的各种统计数据。宏(Macro)宏是多个操作的集合,其中每个操作可实现特定的功能。宏主要用于处理一些重复性操作。38数据库的建立和维护Access数据库的组成
Access数据库文件的扩展名为.mdb,在该文件中:用表来存储数据;用查询来查找和检索所需的数据;用窗体来查看、添加和更新表中的数据;用报表以特定的版式来分析或打印数据。39创建数据库设计数据库设计数据库的关键在于建立基本表。确定数据库中所需要的表每个表只包含关于一种实体(如学生、教师、课程等)的信息。Access数据库的建立40Access数据库的建立创建数据库设计数据库设计数据库的关键在于建立基本表。确定表的结构确定表结构就是确定数据库中的每一个表所需要的字段、各字段的字段类型和主键。数据库中的每个表必须包含能唯一标识每条记录的字段或字段集,即主键。41Access数据库的建立创建数据库设计数据库设计数据库的关键在于建立基本表。确定表之间的关系数据库中表不应该是相互独立的,它们之间一定存在直接或间接的关系。表间的关系类型有一对一、一对多、多对多等。42Access数据库的建立创建数据库创建数据库文件即创建扩展名为.mdb
的数据库文件。有两种方法:创建空数据库文件(建议初学者使用)利用向导创建数据库文件43Access数据库的建立创建数据库创建数据库文件创建数据库文件后,接着要做的是:创建表(首要任务)定义表与表之间的关系向表中输入数据再创建其他数据库对象以实现数据库系统的功能。44Access数据库的建立创建表在Access数据库中,表具有两种工作视图:设计视图——用于创建及修改表的结构;数据表视图——用于查看、添加、删除及编辑表中
的数据。45Access数据库的建立创建表创建表的几种方法:利用表向导利用设计视图(先定义表结构)(建议初学者使用)利用数据表视图(先输入表中记录)通过导入表或“粘贴追加”的方式使用外部数据46Access数据库的建立创建表使用表设计器定义表结构表的设计视图由两部分构成:上半部分用于设计表的结构,下半部分用于设置当前字段的属性。
【例8.1】创建表Students,创建表Scores。
47Access数据库的建立创建表使用表设计器定义表结构定义各字段的字段名
64个字符(除前导空格、句点、方括号等)以内。定义各字段的数据类型文本(Text)数字(Number)货币(Currency)是/否(Yes/No)备注(Memo)日期/时间(Date/Time)自动编号(AutoNumber)OLE对象(OLEObject)48Access数据库的建立创建表使用表设计器定义表结构定义各字段的字段属性字段大小小数位数默认值有效性文本必填字段格式标题有效性规则输入掩码索引49Access数据库的建立创建表使用表设计器定义表结构字段的“有效性规则”和“有效性文本”“有效性规则”用于规定输入到字段中的数据的要求,当在字段中输入的数据违反了“有效性规则”时,系统将显示“有效性文本”中设置的提示信息。在“有效性规则”中只能输入表达式,而在“有效性文本”中只能输入字符串。50Access数据库的建立创建表使用表设计器定义表结构定义主键主键不是必须的,但应尽量定义主键。只有定义了主键的表,才能定义它与数据库中其他表之间的关系。主键有自动编号主键、单字段主键、多字段主键3种。51Access数据库的建立创建表使用表设计器定义表结构定义索引索引是对记录的虚拟排序,它不影响记录在表中的位置和顺序。建立索引可以加快查询的速度。在“索引”对话框中设置索引的升序或降序方式。备注、超链接和OLE对象字段不能定义索引。52Access数据库的建立创建表输入表数据“自动编号(ID)”字段系统自动为该字段填上一个流水号。必填字段字段不能是空值,只有输入了数据以后,光标才能移开。53Access数据库的建立创建表输入表数据备注字段按【Shift】+【F2】键打开文本编辑对话框,在其中输入数据后,按【Ctrl】+【Enter】键换行,按【Enter】键将关闭文本编辑框。OLE对象字段使用[插入][对象]命令完成图像等数据的输入。54Access数据库的建立创建表输入表数据一条记录输入结束后,光标移到另一个记录上,Access将整个记录自动存盘,不需要单独保存。55Access数据库的建立创建表表数据的导入通过导入操作,可将其他格式(文本文件、电子表格等)的数据文件复制到Access的新表中。
56Access数据库的建立定义表与表之间的关系创建关系关闭所有打开的表;打开“关系”窗口,在“显示表”对话框中选择相关表;将一个表的相关字(主键)拖动到其他表中的相关字段上;在“编辑关系”对话框设置关系选项等。57Access数据库的建立定义表与表之间的关系编辑和删除关系编辑关系在“关系”窗口中双击要编辑的关系连线,再在“编辑关系”对话框中进行设置。删除关系在“关系”窗口中单击要删除的关系连线,然后按【Delete】键删除。58Access数据库的维护数据库的管理和维护修改表结构在表的设计视图中完成。包括添加字段、修改字段、删除字段、修改字段的属性、修改主键和索引等。打开或正在使用的表不能修改其结构,需先将表关闭。修改字段名不影响字段中原有的数据。修改字段的数据类型,可能导致字段中的数据丢失。59数据查询与SQL数据查询概述查询是按照指定条件对数据库中的数据进行检索,它是数据库的核心操作;在数据库中,一个查询可以从一个或多个表中检索数据,也可以对查询的结果做进一步的查询处理,还可以将查询结果用做窗体、报表的数据源。60数据库查询数据查询概述通过查询可以很容易地实现下列目标:显示指定字段的数据(投影);查找符合指定条件的记录(筛选);对指定字段进行计算(如求平均值、最大值、统计记录个数等);将查询的结果作为窗体或报表的数据源;61数据库查询数据查询概述在Access中一般通过创建查询对象实现数据查询,也可以直接使用SQL的SELECT语句来实现数据查询操作;任何查询都对应一条SQL的SELECT语句。62创建查询创建查询的两种方法:使用向导创建查询使用设计视图创建查询SELECT语句来实现数据查询操作63创建查询使用向导创建查询使用向导只能创建简单的查询,不能设置查询条件;可以从多个建立了关系的表中进行查询。【例8.2】使用向导查询所有学生的基本情况。64创建查询使用设计视图创建查询【例8.3】查询平均成绩在75分以上的所有学生的学号、姓名和平均成绩。65窗体和报表窗体概述窗体是用户交互式访问数据库的界面,是数据库与用户之间的主要接口。通过窗体可以实现下列目标:向表中输入数据查看或更新表中的数据66窗体和报表窗体的类型纵栏式窗体垂直排列字段,通常由两列组成:左列显示字段名,右列显示字段值;一次显示一条记录;通常用作输入窗体。67窗体和报表窗体的类型表格式窗体用于一次显示多条记录;可以显示数据表无法显
示的图象等
OLE对象。68窗体和报表窗体的类型主/子窗体基本窗体称为主窗体,窗
体中的窗体称为子窗体;主/子窗体用于同时显示一对多关系的两张表或多张表的数据;主窗体显示关系中的
“一”,通常使用纵栏式窗体;子窗体显示关系中的“多”,通常使用表格式窗体或数据工作表窗体。69窗体和报表窗体的类型数据工作表窗体其外观与表的数据表视图一样;主要功能是作为另一个窗体的子窗体。70窗体和报表窗体的类型图表窗体以图表的形式显示数据;图表窗体既可以单独使用,也可以作为子窗体嵌入到其他窗体中。71窗体和报表创建窗体创建窗体的两种方法:使用向导创建窗体使用设计视图创建窗体72窗体和报表创建窗体使用向导创建窗体使用向导创建窗体时,用户只需按提示输入相应的信息或选择合适的样式,就可以创建一个窗体;创建好的窗体还可以在窗体的设计视图中进行修改;73窗体和报表创建窗体使用向导创建窗体【例8.4】创建窗体Scores1用于维护表Scores。74窗体和报表创建窗体使用设计视图创建窗体使用设计视图可以创建具有个性化的窗体,还可以修改使用向导生成的窗体;【例8.5】创建窗体Scores2,显示学生的学号、姓名和平均成绩。75窗体和报表报表概述报表主要用于打印数据和对数据进行汇总;报表设计的方法和窗体的设计类似,可以为报表指定表或查询作为数据源,也可以在报表中进行数据的统计(求和、平均值和计数等)。76窗体和报表报表的类型Access提供了5种不同类型的报表:纵栏式报表表格式报表分组/合计报表图表报表标签报表77窗体和报表报表的类型纵栏式报表垂直排列字段,通常由两列组成:左列显示字段名,右列显示字段值。78窗体和报表报表的类型表格式报表一次显示多条记录。79窗体和报表报表的类型分组合计报表将数据按某个字段分组,组织成表格形式,并可以在报表中计算总和、平均值、最大值和最小值。80窗体和报表报表的类型图表报表以图表的形式显示数据。81窗体和报表报表的类型标签报表将数据按照定义的格式进行显示和打印;用于一些特殊的用途,如信封上的地址标签等。82窗体和报表创建报表创建报表的两种方法:使用向导创建报表使用设计视图创建报表83窗体和报表创建报表使用向导创建报表Access提供了4种报表向导:报表向导自动创建报表其中的自动创建报表又有2种类型:纵栏式表格式图表向导标签向导84窗体和报表创建报表使用向导创建报表【例8.7】创建报表Scores1。【例8.8】创建报表Scores2,输出每个学生的学号、姓名和平均成绩。85数据库查询SELECT语句SELECT语句包含4个部分,其语法形式为:SELECT
[
ALL
|
DISTINCT
]
目标列
FROM
表(或查询)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年装修耗材购销合同(1篇)
- 2026年劳保保护用品合同(1篇)
- 2026年木地板供货合同(1篇)
- 消化系统护理与肠内营养
- 癫痫患者康复指导与护理
- 护理竞赛团队协作与沟通技巧
- 市场营销原理与实践第17版第20章某省市场营销社会责任和道德
- 焦虑症患者的运动疗法
- 新型冠状病毒症状识别方法
- 2026 塑型进阶炸肉课件
- 2026年骨科副主任医师职称考试历年真题及答案
- 2026届福建省厦门市高三三检英语试题(含答案和音频)
- 2026年反兴奋剂检查官考试兴奋剂检查违规情形识别题
- 银川市、石嘴山市、吴忠市三市2026年高三年级学科教学质量检测数学+答案
- 2026四川成都产业投资集团有限公司所属公司招聘5人笔试历年参考题库
- 《智能产品设计》全套教学课件
- 【715】《老年护理服务能力提升行动方案》深度解读
- (2026春新版)部编版八年级语文下册全册教案
- GB 12801-2025生产过程安全基本要求
- 2026.07.01施行的民用航空法(2025修订)解读
- 2025年双碳产业研究报告
评论
0/150
提交评论