最新大学计算机基础学习资料:第7章数据库技术PPT课件.ppt
-
资源ID:88687605
资源大小:1.70MB
全文页数:93页
- 资源格式: PPT
下载积分:20金币
快捷下载
![游客一键下载](/images/hot.gif)
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
最新大学计算机基础学习资料:第7章数据库技术PPT课件.ppt
大学计算机基础学习资料:大学计算机基础学习资料:第第7 7章数据库技术章数据库技术内容摘要1.数据库技术概述数据库技术概述2.数据库管理系统的结构与功能数据库管理系统的结构与功能3.数据库系统的组成与功能数据库系统的组成与功能4.关系数据库在关系数据库在Access中的实现中的实现22 2数据库管理系统(DBMS)指帮助用户创建和管理数据库的应用程序集合。用户在数据库系统中的一切操作,包括定义、构造、操纵等,都是通过DBMS进行的。9 9DBMS的功能1010DBMS的层次结构应用层语言翻译处理层数据存取层数据存储层操作系统最终用户和应用程序数据库管理系统DBMS与终端用户和应用程序的界面层,处理的对象包括各种各样的数据库应用,如一些应用程序、最终用户通过应用接口发来的事务请求等。处理的对象是数据语言。该层对数据库语言的各类语句进行语法分析、视图转换、授权检查、完整性检查、查询优化等。处理的对象是单个元组。它将上一层基于集合的操作转换为基于单记录的操作,并完成数据记录的存取、存取路径的维护、并发控制、事务管理等工作。处理的对象是数据页和系统缓冲区,使用操作系统提供的基本存取方法执行数据的物理文件的读写操作。1111常见的DBMS典型的实验系统典型的实验系统qqSystemRSystemRqqUniversityINGRESUniversityINGRES典型的商用系统典型的商用系统qqDB2DB2qqOracleOracleqqSybaseSybaseqqMicrosoftSQLServerMicrosoftSQLServerqqMicrosoftAccessMicrosoftAccessqqMySQLMySQL大型中型小型1212数据库系统的组成计算机存储设备DBDBDBDBMSDBA应用程序操作系统最终用户最终用户计算机系统1313数据模型l l设计者、程序员、终端用户以不同的方式看待数据设计者、程序员、终端用户以不同的方式看待数据n n用哪种表现形式描述数据,是文字?数值?还是声音?图形?对象?用哪种表现形式描述数据,是文字?数值?还是声音?图形?对象?n n用哪种结构方式描述数据之间的联系?是层次?网状?还是关系?用哪种结构方式描述数据之间的联系?是层次?网状?还是关系?l l数据模型是三者沟通的桥梁数据模型是三者沟通的桥梁l l数据模型是数据库的框架数据模型是数据库的框架数据模型设计者设计者程序员程序员终端用户终端用户14141515l l实体实体(entity)(entity)客观存在可以相互区别的事物。客观存在可以相互区别的事物。-可以是可触及的对象,也可以是抽象的事件,如一堂课,一次比赛等。可以是可触及的对象,也可以是抽象的事件,如一堂课,一次比赛等。l l属性属性(attribute)(attribute)实体所具有的特征。实体所具有的特征。-例如,学生有学号、姓名、性别等属性。例如,学生有学号、姓名、性别等属性。l l域域(domain)(domain)属性可取值的范围。属性可取值的范围。-例如,例如,“性别性别”属性的域为属性的域为“男男/女女”。l l键键(key)(key)实体属性集中能唯一区分每个实体的最小的属性集。实体属性集中能唯一区分每个实体的最小的属性集。-例如,学生实体的学号属性。例如,学生实体的学号属性。1616l l实体间的联系实体间的联系 l l一对一联系一对一联系系情况表系情况表编号编号名称名称系主任编号系主任编号 系主任情况表系主任情况表教师编号教师编号姓名姓名性别性别出生日期出生日期系编号系编号联系方式联系方式1:11717l l实体间的联系实体间的联系 l l一对多联系一对多联系学生情况表学生情况表学号学号姓名姓名性别性别出生日期出生日期班级编号班级编号联系方式联系方式班级表班级表班级编号班级编号班级名称班级名称N:11818l l实体间的联系实体间的联系 l l多对多联系多对多联系学生选课情况表学生选课情况表学号学号姓名姓名性别性别选课编号选课编号课程情况表课程情况表课程编号课程编号名称名称任教老师任教老师选课学生选课学生M:N1919数据库系统概述数据模型qq关系数据库概述关系数据库概述l l关关系系数数据据库库中中的的数数据据采采用用的的是是关关系系数数据据模模型型,其其数数据据的基本结构是表(的基本结构是表(TableTable),又称为二维表。),又称为二维表。2020数据库系统概述学生表学生表学号学号姓名姓名性性别别党党员员专业专业出生年月出生年月课程课程成绩成绩990001990001王涛王涛男男NoNo物理物理82-01-2182-01-21大学大学计计算机基算机基础础8282990001990001王涛王涛男男NoNo物理物理82-01-2182-01-21高等数学高等数学7676990002990002庄前庄前女女YesYes物理物理82-09-2182-09-21大学大学计计算机基算机基础础9090990101990101丁保丁保华华男男NoNo数学数学81-04-1881-04-18高等数学高等数学7777990102990102姜沛棋姜沛棋女女NoNo数学数学81-12-0281-12-02大学大学计计算机基算机基础础6868990102990102姜沛棋姜沛棋女女NoNo数学数学81-12-0281-12-02C/C+C/C+程序程序设计设计8585990102990102姜沛棋姜沛棋女女NoNo数学数学81-12-0281-12-02大学英大学英语语5656数据模型qq关系数据库概述关系数据库概述2121数据库系统概述数据模型qq关系数据库概述关系数据库概述学生基本信息表学生基本信息表学号学号姓名姓名性性别别党党员员专业专业出生年月出生年月990001990001王涛王涛男男NoNo物理物理82-01-2182-01-21990002990002庄前庄前女女YesYes物理物理82-09-2182-09-21990101990101丁保丁保华华男男NoNo数学数学81-04-1881-04-18990102990102姜沛棋姜沛棋女女NoNo数学数学81-12-0281-12-02990103990103张张智忠智忠男男NoNo数学数学80-08-0680-08-06990201990201程玲程玲女女YesYes计计算机算机82-11-1482-11-14990202990202黎敏黎敏艳艳女女YesYes计计算机算机83-02-2183-02-21990203990203邓邓倩梅倩梅女女YesYes计计算机算机82-04-2882-04-28 学生成绩表学生成绩表学号学号课课程程成成绩绩990001990001大学大学计计算机基算机基础础8282990001990001高等数学高等数学7676990002990002大学大学计计算机基算机基础础9090990101990101高等数学高等数学7777990102990102大学大学计计算机基算机基础础6868990102990102C/C+C/C+程序程序设计设计8585990102990102大学英大学英语语56562222数据库系统概述数据模型qq关系数据库概述关系数据库概述课程表课程表课课程号程号课课程程10011001大学大学计计算机基算机基础础20012001高等数学高等数学30023002C/C+C/C+程序程序设计设计10021002大学英大学英语语30103010计计算机算机导论导论专业表专业表专业专业号号专业专业301301数学数学302302物理物理303303计计算机算机102102英英语语405405会会计计2323数据库系统概述数据模型qq关系数据库概述关系数据库概述学生基本信息表学生基本信息表学号学号姓名姓名性性别别党党员员专业专业号号出生年月出生年月990001990001王涛王涛男男NoNo30230282-01-2182-01-21990002990002庄前庄前女女YesYes30230282-09-2182-09-21990101990101丁保丁保华华男男NoNo30130181-04-1881-04-18990102990102姜沛棋姜沛棋女女NoNo30130181-12-0281-12-02990103990103张张智忠智忠男男NoNo30130180-08-0680-08-06990201990201程玲程玲女女YesYes30330382-11-1482-11-14990202990202黎敏黎敏艳艳女女YesYes30330383-02-2183-02-21990203990203邓邓倩梅倩梅女女YesYes30330382-04-2882-04-28学生成绩表学生成绩表学号学号课课程号程号成成绩绩9900019900011001100182829900019900012001200176769900029900021001100190909901019901012001200177779901029901021001100168689901029901023002300285859901029901021002100256562424数据库系统概述数据模型qq关系数据库的基本概念关系数据库的基本概念l l关关系系 一一个个关关系系在在逻逻辑辑上上对对应应一一个个按按行行、列列排排列列的二维表,每个关系有一个关系名。的二维表,每个关系有一个关系名。l l属属性性 二二维维表表中中的的列列,或或称称字字段段(FieldField),每每一一列有一个属性名或称字段名。列有一个属性名或称字段名。l l记记录录 二二维维表表中中的的一一行行称称为为一一条条记记录录(RecordRecord),又称为元组。又称为元组。2525数据库系统概述数据模型qq关系数据库的基本概念关系数据库的基本概念l l值值域域 属属性性的的取取值值范范围围。例例如如,性性别别属属性性的的取取值值范围是范围是“男男”或或“女女”。l l主主键键(KeyKey)属属性性或或属属性性组组合合,其其值值能能够够唯唯一一地地 标标识识元元组组。例例如如学学生生表表的的主主键键为为 “学学号号”、成成绩绩表表的的主主键键为为“学学号号”+“课程号课程号”。2626数据库系统概述数据模型qq关系模式关系模式 对对关关系系的的关关系系名名及及属属性性的的描描述述称称为为关关系系模模式式,其其格式为:格式为:关系名(属性关系名(属性关系名(属性关系名(属性 1 1,属性,属性,属性,属性 2 2,属性,属性,属性,属性 n n)例如,学生表的关系模式为:例如,学生表的关系模式为:学生表(学号学生表(学号学生表(学号学生表(学号,姓名姓名姓名姓名,性别性别性别性别,籍贯籍贯籍贯籍贯,出生日期出生日期出生日期出生日期,入学总分入学总分入学总分入学总分,爱好特长)爱好特长)爱好特长)爱好特长)2727关系数据库的建立Access是一种关系型数据库管理系统,它提供了一套完整的工具和向导,使用户通过可视化的操作来完成大部分的数据库管理和开发工作。2828Access数据库的组成qq一个一个AccessAccess数据库中包含了数据库中包含了77种不同的对象:种不同的对象:l l表表l l查询查询l l窗体窗体l l报表报表l l页页l l宏宏l l模块模块2929Access表达式qqAccessAccess的常用运算符的常用运算符AccessAccess的常用运算符包括:的常用运算符包括:算术运算符算术运算符+、-、*、/、ModMod关系运算符关系运算符=、=逻辑运算符逻辑运算符 NotNot、AndAnd、OrOr字符运算符字符运算符&特殊运算符特殊运算符 BetweenAndBetweenAnd、LikeLike、InIn、IsIs3030Access表达式qqAccessAccess的常用运算符的常用运算符 说明:说明:1.1.在在表表达达式式中中,字字符符常常量量用用 号号或或 号号括括起起来来,日日期期常常量量用用#号括起来;号括起来;2.2.ModMod为取余数运算符;为取余数运算符;3.3.BetweenBetween运算符的格式为:运算符的格式为:BetweenAndBetweenAnd;4.4.LikeLike运算符通常与运算符通常与?和和*结合使用,用于模糊查询;结合使用,用于模糊查询;5.5.InIn运算符用于确定某字符串值是否在一组字符串值内。运算符用于确定某字符串值是否在一组字符串值内。3131Access表达式qqAccessAccess表达式示例表达式示例1.1.字段有效性规则中的表达式:字段有效性规则中的表达式:00输入一个非零值;输入一个非零值;0Or1000Or100值必须为值必须为00或大于或大于100100;Like“K?”Like“K?”值必须为以字母值必须为以字母KK开头的四个字符;开头的四个字符;#1/1/2009#=#1/1/2009#And=#1/1/2009#And#1/1/2010#输入输入20092009年的日期。年的日期。3232Access表达式qqAccessAccess表达式示例表达式示例2.2.向查询提供条件的表达式:向查询提供条件的表达式:字段字段字段字段表达式表达式表达式表达式结果结果结果结果性别性别 男男 查查找找男男教教授授和和男男副副教教授授的的记记录;录;职称职称Like*Like*教授教授 出生日期出生日期BetweenBetween#1990-1-1#1990-1-1#AndAnd#1999-12-31#1999-12-31#查查找找2020世世纪纪9090年年代代出出生生的的人员记录;人员记录;姓名姓名LikeLike陈陈*查找姓陈的人员记录;查找姓陈的人员记录;3333Access表达式qqAccessAccess表达式示例表达式示例2.2.向查询提供条件的表达式:向查询提供条件的表达式:字段字段字段字段表达式表达式表达式表达式结果结果结果结果姓名姓名NotLikeNotLike陈陈*或或Like!Like!陈陈*查找不姓陈的人员记录;查找不姓陈的人员记录;姓名姓名LikeLike陈李高陈李高*查查找找姓姓陈陈、姓姓李李和和姓姓高高的的人人员记录;员记录;编号编号InIn(T101T101,T102T102,T105T105,T108T108)查查找找编编号号为为 T101T101、T102T102、T105T105 和和 T108T108 的人员记录。的人员记录。3434数据库的建立和维护Access数据库的组成qq表(表(TableTable)表表是是最最基基本本的的对对象象,是是有有关关特特定定实实体体的的数数据据的的集集合,以记录、字段格式组织数据。合,以记录、字段格式组织数据。AccessAccess允许在数据库的多个表之间定义关系。允许在数据库的多个表之间定义关系。3535数据库的建立和维护Access数据库的组成qq查询(查询(QueryQuery)查询是对数据库中数据的直接访问。查询是对数据库中数据的直接访问。利利用用查查询询可可以以通通过过不不同同的的方方式式来来查查看看、更更改改、分分析析以以及及操操纵纵数数据据库库中中的的数数据据,也也可可以以为为其其他他查查询询、窗窗体体和和报报表表提提供供数数据据,还还可可以以为为一一个个数数据据访访问问页页提提供供数数据源。据源。3636数据库的建立和维护Access数据库的组成qq窗体(窗体(FormForm)窗窗体体是是用用户户交交互互式式访访问问数数据据库库的的界界面面,是是数数据据库库与用户之间的主要接口。与用户之间的主要接口。使使用用窗窗体体可可以以容容易易、直直观观地地向向表表输输入入数数据据、查查看看或或更更新新表表的的数数据据,以以及及根根据据用用户户的的输输入入信信息息执执行行相相应应的操作。的操作。3737数据库的建立和维护Access数据库的组成qq报表(报表(ReportReport)报表是输出数据库数据的有效方法。报表是输出数据库数据的有效方法。在在报报表表中中可可以以控控制制每每个个数数据据的的显显示示方方式式、对对数数据据进行排序和分组、给出每组记录的各种统计数据。进行排序和分组、给出每组记录的各种统计数据。qq宏(宏(MacroMacro)宏宏是是多多个个操操作作的的集集合合,其其中中每每个个操操作作可可实实现现特特定定的功能。宏主要用于处理一些重复性操作。的功能。宏主要用于处理一些重复性操作。3838数据库的建立和维护Access数据库的组成AccessAccess数据库文件的扩展名为数据库文件的扩展名为.mdb.mdb,在该文件中:,在该文件中:l l用用表表来存储数据;来存储数据;l l用用查询查询来查找和检索所需的数据;来查找和检索所需的数据;l l用用窗体窗体来查看、添加和更新表中的数据;来查看、添加和更新表中的数据;l l用用报表报表以特定的版式来分析或打印数据。以特定的版式来分析或打印数据。3939创建数据库qq设计数据库设计数据库设计数据库的关键在于建立基本表。设计数据库的关键在于建立基本表。1.1.确定数据库中所需要的表确定数据库中所需要的表 每每个个表表只只包包含含关关于于一一种种实实体体(如如学学生生、教教师师、课课程等)的信息。程等)的信息。Access 数据库的建立4040Access 数据库的建立创建数据库qq设计数据库设计数据库设计数据库的关键在于建立基本表。设计数据库的关键在于建立基本表。2.2.确定表的结构确定表的结构 确确定定表表结结构构就就是是确确定定数数据据库库中中的的每每一一个个表表所所需需要要的的字段字段字段字段、各字段的、各字段的字段类型字段类型字段类型字段类型和和主键主键主键主键。数数据据库库中中的的每每个个表表必必须须包包含含能能唯唯一一标标识识每每条条记记录录的字段或字段集,即主键。的字段或字段集,即主键。4141Access 数据库的建立创建数据库qq设计数据库设计数据库设计数据库的关键在于建立基本表。设计数据库的关键在于建立基本表。3.3.确定表之间的关系确定表之间的关系 数数据据库库中中表表不不应应该该是是相相互互独独立立的的,它它们们之之间间一一定定存在直接或间接的关系。存在直接或间接的关系。表间的关系类型有表间的关系类型有一对一一对一一对一一对一、一对多一对多一对多一对多、多对多多对多多对多多对多等。等。4242Access 数据库的建立创建数据库qq创建数据库文件创建数据库文件即创建扩展名为即创建扩展名为.mdb.mdb的数据库文件。有两种方法:的数据库文件。有两种方法:l l创建空数据库文件(建议初学者使用)创建空数据库文件(建议初学者使用)l l利用向导创建数据库文件利用向导创建数据库文件4343Access 数据库的建立创建数据库qq创建数据库文件创建数据库文件创建数据库文件后,接着要做的是:创建数据库文件后,接着要做的是:1.1.创建表(创建表(首要任务首要任务)2.2.定义定义表与表之间的关系表与表之间的关系3.3.向表中输入数据向表中输入数据4.4.再再创建其他数据库对象创建其他数据库对象以实现数据库系统的功能。以实现数据库系统的功能。4444Access 数据库的建立创建表qq在在AccessAccess数据库中,表具有两种工作视图:数据库中,表具有两种工作视图:l l设计视图设计视图用于创建及修改表的结构;用于创建及修改表的结构;l l数数据据表表视视图图 用用于于查查看看、添添加加、删删除除及及编编辑辑表表中中的数据。的数据。4545Access 数据库的建立创建表qq创建表的几种方法:创建表的几种方法:l l利用表向导利用表向导l l利用设计视图(先定义表结构)(建议初学者使用)利用设计视图(先定义表结构)(建议初学者使用)l l利用数据表视图(先输入表中记录)利用数据表视图(先输入表中记录)l l通过导入表或通过导入表或“粘贴追加粘贴追加”的方式使用外部数据的方式使用外部数据4646Access 数据库的建立创建表qq使用表设计器定义表结构使用表设计器定义表结构 表表的的设设计计视视图图由由两两部部分分构构成成:上上半半部部分分用用于于设设计计表的结构,下半部分用于设置当前字段的属性。表的结构,下半部分用于设置当前字段的属性。【例【例8.18.1】创建表】创建表StudentsStudents,创建表,创建表ScoresScores。4747Access 数据库的建立创建表qq使用表设计器定义表结构使用表设计器定义表结构l l定义各字段的字段名定义各字段的字段名6464个字符(除前导空格、句点、方括号等)以内。个字符(除前导空格、句点、方括号等)以内。l l定义各字段的数据类型定义各字段的数据类型文本(文本(TextText)数字(数字(NumberNumber)货币(货币(CurrencyCurrency)是是/否(否(Yes/NoYes/No)备注(备注(MemoMemo)日期日期/时间(时间(Date/TimeDate/Time)自动编号(自动编号(AutoNumberAutoNumber)OLEOLE对象(对象(OLEObjectOLEObject)4848Access 数据库的建立创建表qq使用表设计器定义表结构使用表设计器定义表结构l l定义各字段的字段属性定义各字段的字段属性字段大小字段大小小数位数小数位数默认值默认值有效性文本有效性文本必填字段必填字段格式格式标题标题有效性规则有效性规则输入掩码输入掩码索引索引4949Access 数据库的建立创建表qq使用表设计器定义表结构使用表设计器定义表结构l l字段的字段的“有效性规则有效性规则”和和“有效性文本有效性文本”“有有有有效效效效性性性性规规规规则则则则”用用于于规规定定输输入入到到字字段段中中的的数数据据的的要要求求,当当在在字字段段中中输输入入的的数数据据违违反反了了“有有效效性性规规则则”时时,系统将显示系统将显示“有效性文本有效性文本有效性文本有效性文本”中设置的提示信息。中设置的提示信息。在在“有有效效性性规规则则”中中只只能能输输入入表表表表达达达达式式式式,而而在在“有有效效性文本性文本”中只能输入中只能输入字符串字符串字符串字符串。5050Access 数据库的建立创建表qq使用表设计器定义表结构使用表设计器定义表结构l l定义主键定义主键 主主键键不不是是必必须须的的,但但应应尽尽量量定定义义主主键键。只只有有定定义义了了主主键键的的表表,才才能能定定义义它它与与数数据据库库中中其其他他表表之之间间的的关关系。系。主主键键有有自自自自动动动动编编编编号号号号主主主主键键键键、单单单单字字字字段段段段主主主主键键键键、多多多多字字字字段段段段主主主主键键键键33种。种。5151Access 数据库的建立创建表qq使用表设计器定义表结构使用表设计器定义表结构l l定义索引定义索引 索索引引是是对对记记录录的的虚虚虚虚拟拟拟拟排排排排序序序序,它它不不影影响响记记录录在在表表中中的位置和顺序。建立索引可以加快查询的速度。的位置和顺序。建立索引可以加快查询的速度。在在“索引索引”对话框中设置索引的升序或降序方式。对话框中设置索引的升序或降序方式。备注、超链接和备注、超链接和OLEOLE对象字段不能定义索引。对象字段不能定义索引。5252Access 数据库的建立创建表qq输入表数据输入表数据l l“自动编号(自动编号(IDID)”字段字段系统自动为该字段填上一个流水号。系统自动为该字段填上一个流水号。l l必填字段必填字段 字字段段不不能能是是空空值值,只只有有输输入入了了数数据据以以后后,光光标标才才能移开。能移开。5353Access 数据库的建立创建表qq输入表数据输入表数据l l备注字段备注字段 按按【ShiftShift】+【F2F2】键键打打开开文文本本编编辑辑对对话话框框,在在其其中中输输入入数数据据后后,按按【CtrlCtrl】+【EnterEnter】键键换换行行,按按【EnterEnter】键将关闭文本编辑框。】键将关闭文本编辑框。l lOLEOLE对象字段对象字段使用使用 插入插入对象对象 命令完成图像等数据的输入。命令完成图像等数据的输入。5454Access 数据库的建立创建表qq输入表数据输入表数据 一一条条记记录录输输入入结结束束后后,光光标标移移到到另另一一个个记记录录上上,AccessAccess将整个记录自动存盘,不需要单独保存。将整个记录自动存盘,不需要单独保存。5555Access 数据库的建立创建表qq表数据的导入表数据的导入 通通过过导导入入操操作作,可可将将其其他他格格式式(文文本本文文件件、电电子子表格等)的数据文件复制到表格等)的数据文件复制到AccessAccess的新表中。的新表中。5656Access 数据库的建立定义表与表之间的关系qq创建关系创建关系1.1.关闭所有打开的表;关闭所有打开的表;2.2.打开打开“关系关系”窗口,在窗口,在“显示表显示表”对话框中选择相关表;对话框中选择相关表;3.3.将将一一个个表表的的相相关关字字(主主键键)拖拖动动到到其其他他表表中中的的相相关关字字段上;段上;4.4.在在“编辑关系编辑关系”对话框设置关系选项等。对话框设置关系选项等。5757Access 数据库的建立定义表与表之间的关系qq编辑和删除关系编辑和删除关系l l编辑关系编辑关系 在在“关关系系”窗窗口口中中双双击击要要编编辑辑的的关关系系连连线线,再再在在“编辑关系编辑关系”对话框中进行设置。对话框中进行设置。l l删除关系删除关系 在在“关关系系”窗窗口口中中单单击击要要删删除除的的关关系系连连线线,然然后后按按【DeleteDelete】键删除。】键删除。5858Access 数据库的维护数据库的管理和维护qq修改表结构修改表结构 在在表表的的设设计计视视图图中中完完成成。包包括括添添加加字字段段、修修改改字字段、删除字段、修改字段的属性、修改主键和索引等。段、删除字段、修改字段的属性、修改主键和索引等。打开或正在使用的表不能修改其结构,需先将表关闭。打开或正在使用的表不能修改其结构,需先将表关闭。修改字段名不影响字段中原有的数据。修改字段名不影响字段中原有的数据。修改字段的数据类型,可能导致字段中的数据丢失。修改字段的数据类型,可能导致字段中的数据丢失。5959数据查询与SQL数据查询概述qq查查询询是是按按照照指指定定条条件件对对数数据据库库中中的的数数据据进进行行检检索索,它是数据库的核心操作;它是数据库的核心操作;qq在在数数据据库库中中,一一个个查查询询可可以以从从一一个个或或多多个个表表中中检检索索数数据据,也也可可以以对对查查询询的的结结果果做做进进一一步步的的查查询询处处理理,还可以将查询结果用做窗体、报表的数据源。还可以将查询结果用做窗体、报表的数据源。6060数据库查询数据查询概述qq通过查询可以很容易地实现下列目标:通过查询可以很容易地实现下列目标:l l显示指定字段的数据(显示指定字段的数据(投影投影投影投影););l l查找符合指定条件的记录(查找符合指定条件的记录(筛选筛选筛选筛选););l l对对指指定定字字段段进进行行计计算算(如如求求平平均均值值、最最大大值值、统统计计记记录个数等);录个数等);l l将查询的结果作为窗体或报表的数据源;将查询的结果作为窗体或报表的数据源;6161数据库查询数据查询概述qq在在 AccessAccess中中一一般般通通过过创创建建查查询询对对象象实实现现数数据据查查询询,也也可可以以直直接接使使用用 SQLSQL的的 SELECTSELECT语语句句来来实实现现数数据据查询操作;查询操作;qq任何查询都对应一条任何查询都对应一条SQLSQL的的SELECTSELECT语句。语句。6262创建查询qq创建查询的两种方法:创建查询的两种方法:l l使用向导创建查询使用向导创建查询l l使用设计视图创建查询使用设计视图创建查询l lSELECTSELECT语句来实现数据查询操作语句来实现数据查询操作6363创建查询qq使用向导创建查询使用向导创建查询l l使用向导只能创建简单的查询,不能设置查询条件;使用向导只能创建简单的查询,不能设置查询条件;l l可以从多个建立了关系的表中进行查询。可以从多个建立了关系的表中进行查询。【例【例8.28.2】使用向导查询所有学生的基本情况】使用向导查询所有学生的基本情况。6464创建查询qq使用设计视图创建查询使用设计视图创建查询【例例 8.8.3 3】查查询询平平均均成成绩绩在在 7575分分以以上上的的所所有有学学生生的的学学号号、姓名和平均成绩。姓名和平均成绩。6565窗体和报表窗体概述qq窗窗体体是是用用户户交交互互式式访访问问数数据据库库的的界界面面,是是数数据据库库与与用户之间的主要接口。用户之间的主要接口。qq通过窗体可以实现下列目标:通过窗体可以实现下列目标:l l向表中输入数据向表中输入数据l l查看或更新表中的数据查看或更新表中的数据6666窗体和报表窗体的类型qq纵栏式窗体纵栏式窗体l l垂垂直直排排列列字字段段,通通常常由由两两列列组组成成:左左列列显显示示字字段段名名,右列显示字段值;右列显示字段值;l l一次显示一条记录;一次显示一条记录;l l通常用作输入窗体。通常用作输入窗体。6767窗体和报表窗体的类型qq表格式窗体表格式窗体l l用于一次显示多条记录;用于一次显示多条记录;l l可以显示数据表无法显可以显示数据表无法显示的图象等示的图象等OLEOLE对象。对象。6868窗体和报表窗体的类型qq主主/子窗体子窗体l l基本窗体称为主窗体,窗基本窗体称为主窗体,窗体中的窗体称为子窗体;体中的窗体称为子窗体;l l主主/子子窗窗体体用用于于同同时时显显示示一一对对多多关关系系的的两两张张表表或或多多张张表的数据;表的数据;l l主窗体显示关系中的主窗体显示关系中的“一一”,通常使用纵栏式窗体;,通常使用纵栏式窗体;l l子子窗窗体体显显示示关关系系中中的的“多多”,通通常常使使用用表表格格式式窗窗体体或或数据工作表窗体。数据工作表窗体。6969窗体和报表窗体的类型qq数据工作表窗体数据工作表窗体l l其外观与其外观与表的数据表视图一样;表的数据表视图一样;l l主要功能是作为另一个窗体的子窗体。主要功能是作为另一个窗体的子窗体。7070窗体和报表窗体的类型qq图表窗体图表窗体l l以图表的形式显示数据;以图表的形式显示数据;l l图表窗体既可以单图表窗体既可以单独使用,也可以作独使用,也可以作为子窗体嵌入到其为子窗体嵌入到其他窗体中他窗体中。7171窗体和报表创建窗体qq创建窗体的两种方法:创建窗体的两种方法:l l使用向导创建窗体使用向导创建窗体l l使用设计视图创建窗体使用设计视图创建窗体7272窗体和报表创建窗体qq使用向导创建窗体使用向导创建窗体l l使使用用向向导导创创建建窗窗体体时时,用用户户只只需需按按提提示示输输入入相相应应的的信信息或选择合适的样式,就可以创建一个窗体;息或选择合适的样式,就可以创建一个窗体;l l创建好的窗体还可以在窗体的设计视图中进行修改;创建好的窗体还可以在窗体的设计视图中进行修改;7373窗体和报表创建窗体qq使用向导创建窗体使用向导创建窗体【例【例8.48.4】创建窗体】创建窗体Scores1Scores1用于维护表用于维护表ScoresScores。7474窗体和报表创建窗体qq使用设计视图创建窗体使用设计视图创建窗体 使使用用设设计计视视图图可可以以创创建建具具有有个个性性化化的的窗窗体体,还还可可以修改使用向导生成的窗体;以修改使用向导生成的窗体;【例例 8.8.5 5】创创建建窗窗体体 Scores2Scores2,显显示示学学生生的的学学号号、姓姓名名和平均成绩。和平均成绩。7575窗体和报表报表概述qq报表主要用于打印数据和对数据进行汇总;报表主要用于打印数据和对数据进行汇总;qq报报表表设设计计的的方方法法和和窗窗体体的的设设计计类类似似,可可以以为为报报表表指指定定表表或或查查询询作作为为数数据据源源,也也可可以以在在报报表表中中进进行行数数据据的统计(求和、平均值和计数等)。的统计(求和、平均值和计数等)。7676窗体和报表报表的类型qqAccessAccess提供了提供了55种不同类型的报表:种不同类型的报表:l l纵栏式报表纵栏式报表l l表格式报表表格式报表l l分组分组/合计报表合计报表l l图表报表图表报表l l标签报表标签报表7777窗体和报表报表的类型qq纵栏式报表纵栏式报表 垂垂直直排排列列字字段段,通通常常由由两两列列组组成成:左左列列显显示示字字段段名名,右列显示字段值。右列显示字段值。7878窗体和报表报表的类型qq表格式报表表格式报表一次显示多条记录。一次显示多条记录。7979窗体和报表报表的类型qq分组合计报表分组合计报表 将将数数据据按按某某个个字字段段分分组组,组组织织成成表表格格形形式式,并并可可以以在在报报表表中中计计算算总总和和、平平均均值值、最最大大值值和和最小值最小值。8080窗体和报表报表的类型qq图表报表图表报表以图表的形式显示数据以图表的形式显示数据。8181窗体和报表报表的类型qq标签报表标签报表l l将将数数据据按按照照定定义义的的格格式式进进行行显显示示和和打打印;印;l l用用于于一一些些特特殊殊的的用用途途,如如信信封封上上的的地地址标签等址标签等。8282窗体和报表创建报表qq创建报表的两种方法:创建报表的两种方法:l l使用向导创建报表使用向导创建报表l l使用设计视图创建报表使用设计视图创建报表8383窗体和报表创建报表qq使用向导创建报表使用向导创建报表l lAccessAccess提供了提供了44种报表向导:种报表向导:报表向导报表向导自动创建报表自动创建报表l l其中的自动创建报表又有其中的自动创建报表又有22种类型:种类型:纵栏式纵栏式表格式表格式图表向导图表向导标签向导标签向导8484窗体和报表创建报表qq使用向导创建报表使用向导创建报表【例【例8.78.7】创建报表】创建报表Scores1Scores1。【例例 8.88.8】创创建建报报表表 Scores2Scores2,输输出出每每个个学学生生的的学学号号、姓姓名和平均成绩。名和平均成绩。8585数据库查询SELECT语句qqSELECTSELECT语句包含语句包含44个部分,其语法形式为:个部分,其语法形式为:SELECTSELECT ALLALL|DISTINCTDISTINCT 目标列目标列 FROMFROM 表表(或查询或查询)WHEREWHERE 条件表达式条件表达式 GROUPGROUP BYBY 列名列名1 1 HAVINGHAVING 过滤表达式过滤表达式 ORDERORDER BYBY 列名列名2 2 ASCASC|DESCDESC 8686数据库查询SELECT语句qq语句功能:语句功能:l l按按照照 WHEREWHERE子子句句中中的的条条件件表表达达式式,从从指指定定的的表表或或查询中找出满足条件的记录,按查询中找出满足条件的记录,按目标列目标列目标列目标列显示数据;显示数据;l lGROUPGROUPBYBY子子句句按按列列列列名名名名1 1的的值值对对查查询询结结果果进进行行分分组组,每每组组产产生生 11条条记记录录,再再由由 HAVINGHAVING短短语语对对组组进进行行输输出过滤;出过滤;l lORDERBYORDERBY子句按子句按列名列名列名列名2 2的值对查询结果进行排序。的值对查询结果进行排序。8787数据库查询SELECT语句qq选择字段(基本部分)选择字段(基本部分)SELECTSELECT ALLALL|DISTINCTDISTINCT 目标列目标列 FROMFROM 表表(或查询或查询)【例【例8.98.9】查询所有学生