1、8 8 数据库数据库的基本思维的基本思维 天津科技大学天津科技大学计算机公共基础系计算机公共基础系1目目 录录8.1 数据库概述数据库概述8.2 关系数据库关系数据库8.3 Microsoft Access 2010简介简介8.4 数据库数据库的基本的基本操作操作8.5 查询查询8.6 数据挖掘与大数据数据挖掘与大数据8.1.1 8.1.1 数据库体系结构数据库体系结构1.数据库数据库(DataBase,DB)是是指长期存储在计算机内、有组织的、统一管理的相关数据指长期存储在计算机内、有组织的、统一管理的相关数据的集合的集合。2.数据库管理系统数据库管理系统(DataBase Manageme
2、nt System,DBMS)是是用于建立、使用、管理和维护数据库的系统软件,是数据用于建立、使用、管理和维护数据库的系统软件,是数据库系统的核心组成部分。库系统的核心组成部分。数据库管理系统具有以下主要功能:数据库管理系统具有以下主要功能:(1)数据定义:定义数据库结构,包括定义表、索引、)数据定义:定义数据库结构,包括定义表、索引、视图等数据对象。视图等数据对象。(2)数据操纵:实现对数据库的查询和更新(插入、删)数据操纵:实现对数据库的查询和更新(插入、删除、修改)操作。除、修改)操作。(3)数据库的运行管理:数据库在建立、运行和维护时)数据库的运行管理:数据库在建立、运行和维护时由由D
3、BMS统一管理、统一控制,以保证数据的安全性、完统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用,以及发生故障后的系整性、多用户对数据的并发使用,以及发生故障后的系统恢复。统恢复。(4)数据库的建立和维护:包括数据库初始数据的输入)数据库的建立和维护:包括数据库初始数据的输入和转换,数据库的转储和恢复,数据库的重组织、性能和转换,数据库的转储和恢复,数据库的重组织、性能分析等。分析等。3.数据库系统数据库系统(DataBase System,DBS)是指带有数据库并利用数据库技术进行数据管理的计算是指带有数据库并利用数据库技术进行数据管理的计算机系统。它是在计算机系统中引
4、入了数据库技术后的系机系统。它是在计算机系统中引入了数据库技术后的系统,实现了有组织地、动态地存储大量相关数据,提供统,实现了有组织地、动态地存储大量相关数据,提供了数据处理和共享的便利手段。了数据处理和共享的便利手段。硬件系统硬件系统数据库数据库数据库管理系统数据库管理系统应用系统应用系统数据库管理员数据库管理员用户用户数据库系统4.数据库系统数据库系统的的软件软件(1)数据库管理系统:用于数据库的建立、使用和维护等。)数据库管理系统:用于数据库的建立、使用和维护等。(2)操作系统:支持数据库管理系统的运行。)操作系统:支持数据库管理系统的运行。(3)应用系统:以数据库为基础开发的、面向某一
5、实际应用)应用系统:以数据库为基础开发的、面向某一实际应用的软件系统,如:人事管理系统、财务管理系统、商品进销的软件系统,如:人事管理系统、财务管理系统、商品进销存管理系统、图书管理系统等。存管理系统、图书管理系统等。(4)应用开发工具:用于开发应用系统的实用工具,如)应用开发工具:用于开发应用系统的实用工具,如Delphi、VB、ASP、JSP、PHP等,而等,而MS Access作为数据库管作为数据库管理系统也可以作为开发工具。理系统也可以作为开发工具。5.用户用户(1)终端用户:通过应用系统使用数据库的各级管理人员及)终端用户:通过应用系统使用数据库的各级管理人员及工程技术人员,一般为非
6、计算机专业人员。他们直接使用应工程技术人员,一般为非计算机专业人员。他们直接使用应用系统中已编制好的应用程序间接使用数据库。用系统中已编制好的应用程序间接使用数据库。(2)应用程序员:使用应用开发工具开发应用系统的软件设)应用程序员:使用应用开发工具开发应用系统的软件设计人员,负责为用户设计和编制应用程序,并进行调试和安计人员,负责为用户设计和编制应用程序,并进行调试和安装。装。(3)数据库管理员()数据库管理员(DataBase Administrator,DBA):专门负):专门负责设计、建立、管理和维护数据库的技术人员或团队。责设计、建立、管理和维护数据库的技术人员或团队。现实世界现实世
7、界 信息世界信息世界 机器世界机器世界抽象(概念模型)抽象(数据模型)8.1.2 8.1.2 概念模型概念模型目前常用实体联系模型表示概念目前常用实体联系模型表示概念模型模型1实体实体客观存在并且可以相互区别的事物称为实体。实体可以是具体客观存在并且可以相互区别的事物称为实体。实体可以是具体的人、事、物,如一名学生、一本书、一门课程等;也可以是的人、事、物,如一名学生、一本书、一门课程等;也可以是事件,如学生的一次选课、一场比赛、一次借书等事件,如学生的一次选课、一场比赛、一次借书等。2实体的属性实体的属性实体所具有的某一特性称为属性。如学生实体有学号、姓名、实体所具有的某一特性称为属性。如学
8、生实体有学号、姓名、性别、出生日期、专业等多个属性。属性包括属性名和属性值,性别、出生日期、专业等多个属性。属性包括属性名和属性值,如:学号、姓名、性别、出生日期、专业等为属性名,如:学号、姓名、性别、出生日期、专业等为属性名,(13011103、许志华、男、许志华、男、06/12/1995、机械工程)为某个学生、机械工程)为某个学生实体的属性值。实体的属性值。3实体型实体型用实体名及其属性名来抽象描述同一类实体,称为实体型用实体名及其属性名来抽象描述同一类实体,称为实体型。如如:学生(学号、姓名、性别、出生日期、专业)就是一个实:学生(学号、姓名、性别、出生日期、专业)就是一个实体型,它描述
9、的是学生这一类实体体型,它描述的是学生这一类实体。4实体集实体集同类型实体的集合称为实体集同类型实体的集合称为实体集。如如:全体学生就是一个实体集:全体学生就是一个实体集,而而(13011103、许志华、男、许志华、男、06/12/1995、机械工程)是这个实、机械工程)是这个实体集中的一个实体体集中的一个实体。5实体间的实体间的联系联系实体实体间的联系通常是指两个实体集之间的间的联系通常是指两个实体集之间的联系联系。联系有以下联系有以下3种类型:种类型:(1)一对一联系()一对一联系(1:1)(2)一对多联系()一对多联系(1:n)(3)多对多联系()多对多联系(m:n)一对一联系(一对一联
10、系(1:1)如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中至多有一个中至多有一个实体与之对应;反之亦然,则称实体与之对应;反之亦然,则称A与与B具有一对一联系。具有一对一联系。例如:一个学院有一个院长,一个公司有一个例如:一个学院有一个院长,一个公司有一个CEO一对多联系(一对多联系(1:n)如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中有中有n个实体个实体(n0)与之对应;反之,对于实体集)与之对应;反之,对于实体集B中的每一个实体中的每一个实体,实实体集体集A中至多只有一个实体与之对应,则称中至多只有一个实体与之对应,则称A与
11、与B具有一对多具有一对多联系。联系。例如:一个学院有多个专业,一个公司有多个部门例如:一个学院有多个专业,一个公司有多个部门多对多联系(多对多联系(m:n)如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中有中有n个实体个实体(n0)与之对应;反之,对于实体集)与之对应;反之,对于实体集B中的每一个实体中的每一个实体,实实体集体集A中也有中也有m个实体(个实体(m0)与之对应,则称)与之对应,则称A与与B具有多具有多对多联系。对多联系。例如:一个学生可以选多门课,一门课也可以被多个学生选择例如:一个学生可以选多门课,一门课也可以被多个学生选择6E-R(Entity-
12、Relationship实体实体-联系)联系)图图图中图中包含实体、属性和联系包含实体、属性和联系(1)实体:用矩形框表示,框内写明实体名。)实体:用矩形框表示,框内写明实体名。(2)属性:用椭圆形框表示,框内写明属性名,并用无向边将)属性:用椭圆形框表示,框内写明属性名,并用无向边将其与对应实体连接起来。其与对应实体连接起来。(3)联系:用菱形框表示,框内写明联系名,并用无向边分别)联系:用菱形框表示,框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标注联系的类型(与有关实体连接起来,同时在无向边旁标注联系的类型(1:1,1:n或或m:n)。)。学生与课程联系的E-R图8.1
13、.3 8.1.3 关系模型关系模型用二维表结构表示实体及实体间联系的数据模型称为关系模用二维表结构表示实体及实体间联系的数据模型称为关系模型型。学号学号姓名姓名性别性别出生日期出生日期专业专业生源地生源地民族民族政治面貌政治面貌入学成绩入学成绩13011101巴博华男1995-9-9机械工程北京汉族团员379.0013011102张晓民女1996-11-9机械工程北京汉族团员530.0013011103许志华男1995-6-12机械工程北京汉族党员507.0013011104车鸣华男1996-1-10机械工程北京汉族团员441.0013011105高森华男1996-5-28机械工程北京汉族党员
14、536.0013011106何唯华男1995-8-2机械工程北京汉族团员370.0013011107惠文民女1996-6-18机械工程云南汉族团员422.0013011108景婷民景婷民女女1995-10-22机械工程机械工程辽宁辽宁藏族藏族团员团员571.00学生基本信息用关系来表示8.2 8.2 关系关系数据库数据库关系数据库是基于关系模型的关系数据库是基于关系模型的数据库数据库。在关系数据库中,。在关系数据库中,数据存储在二维结构的表中,而一个关系数据库中,包含数据存储在二维结构的表中,而一个关系数据库中,包含多个数据表多个数据表。Microsoft Access就是一个应用非常广泛的关
15、系数据库管理就是一个应用非常广泛的关系数据库管理系统。系统。1关系术语关系术语(1)关系)关系 一个关系就是一张二维一个关系就是一张二维表表,每个关系有一个关系名。,每个关系有一个关系名。(2)元组)元组表中的一表中的一行行即为一个元组,也称为一个即为一个元组,也称为一个记录记录。(3)属性)属性表中的一表中的一列列即为一个属性,也称为一个即为一个属性,也称为一个字段字段。(4)域)域 属性的取值范围。属性的取值范围。(5)主关键字)主关键字在表中能够在表中能够惟一标识一个记录的字段或字段组合惟一标识一个记录的字段或字段组合,称为,称为候选关键字。候选关键字。一个表中可能有多个候选关键字,从中
16、选择一个作为主一个表中可能有多个候选关键字,从中选择一个作为主关键字,也称为主键。关键字,也称为主键。(6)外部关键字外部关键字1)如果表如果表A和表和表B中有公共字段,且该字段在表中有公共字段,且该字段在表B中是中是主键,则该字段在表主键,则该字段在表A中就称为外部关键字,也叫中就称为外部关键字,也叫外键。外键。2)在关系数据库中,主键和外键表示了在关系数据库中,主键和外键表示了2个表之间的个表之间的联系。联系。课程号课程号学号学号成绩成绩10010203101130111019310010203101130111025210010203101130111037410010203101130
17、1110481100102031011301110578100102031011301110697100102031011301110796100102031011301110894课程号课程号课程名课程名课时课时学分学分校区校区10010203101C语言603泰达泰达10010303101VB语言402泰达泰达10012303101VF语言603泰达泰达10012303102VF语言603泰达西院泰达西院10020101106计算机辅助设计402泰达泰达10020101107计算机辅助设计计算机辅助设计402泰达泰达成绩表课程表(7)关系模式)关系模式对关系的描述,它对应一个关系的结构。其
18、格式为:关对关系的描述,它对应一个关系的结构。其格式为:关系名(属性系名(属性1,属性,属性2,属性,属性n)课程表的关系模式为课程表的关系模式为:课程课程(课程号,课程名,课时,学分)。(课程号,课程名,课时,学分)。2完整性规则完整性规则关系模型的完整性规则是对关系的某种约束条件。关系模型的完整性规则是对关系的某种约束条件。关系模型中有三类完整性约束:关系模型中有三类完整性约束:(1)实体完整性)实体完整性 关系关系中所有元组的主关键字值不能为空值。中所有元组的主关键字值不能为空值。(2)参照完整性)参照完整性 若若一个关系一个关系R的外部关键字的外部关键字F是另一个关系是另一个关系S的主
19、关键字的主关键字,则,则R中的每一个元组在中的每一个元组在F上的值必须是上的值必须是S中某一元组的主关中某一元组的主关键字的值,或者取空值。键字的值,或者取空值。(3)用户自定义完整性)用户自定义完整性 针对针对某一具体关系的约束条件,它反映某一具体应用所某一具体关系的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。涉及的数据必须满足的语义要求。8.3 8.3 Microsoft Access 2010Microsoft Access 2010简介简介包括包括6种数据库对象。种数据库对象。(1)表:数据库的核心与基础,存放数据库中的全部数据。)表:数据库的核心与基础,存放数据库中的
20、全部数据。(2)查询:数据库中检索数据的对象,用于从一个或多个表)查询:数据库中检索数据的对象,用于从一个或多个表中找出用户需要的记录。中找出用户需要的记录。(3)窗体:用户与数据库应用系统进行人机交互的界面。)窗体:用户与数据库应用系统进行人机交互的界面。(4)报表:数据的打印输出,按用户要求的格式和内容打印)报表:数据的打印输出,按用户要求的格式和内容打印数据库中的各种信息。数据库中的各种信息。(5)宏:数据库中一个或多个操作的集合,每个操作实现特)宏:数据库中一个或多个操作的集合,每个操作实现特定的功能。定的功能。(6)模块:数据库中存放)模块:数据库中存放VBA(Visual Basi
21、c for Applications)代码的对象,创建模块对象的过程也就是使用代码的对象,创建模块对象的过程也就是使用VBA编写程序的编写程序的过程。过程。8.4.1 8.4.1 创建创建数据库数据库1.使用使用Access 2010模板创建模板创建数据库的步骤数据库的步骤如下如下:(1)执行)执行“文件文件新建新建样本模板样本模板”命令命令,选中一个样选中一个样本本模板模板。(2)Access自动创建数据库,打开窗体布局自动创建数据库,打开窗体布局视图视图。利用数据库模板创建的数据库,包括表、查询、窗体、报利用数据库模板创建的数据库,包括表、查询、窗体、报表、宏、模块等子对象。用户可以根据实
22、际需要修改这些表、宏、模块等子对象。用户可以根据实际需要修改这些对象,以减少数据库开发的工作量。对象,以减少数据库开发的工作量。2.创建创建空空数据库数据库的步骤的步骤如下如下:(1)执行执行“文件文件新建新建空数据库空数据库”命令命令(2)指定数据库保存的路径和文件名指定数据库保存的路径和文件名Access 2010的数据库文件的扩展名为的数据库文件的扩展名为.accdb8.4.2 8.4.2 创建表创建表在在Access数据库中,表是整个数据库系统的基础,所有的原数据库中,表是整个数据库系统的基础,所有的原始数据都存储在表中,其他数据库对象,如查询、窗体、报始数据都存储在表中,其他数据库对
23、象,如查询、窗体、报表等都在表的基础上建立并使用。表等都在表的基础上建立并使用。1.使用使用设计视图创建表设计视图创建表的步骤如下的步骤如下:(1)执行执行“创建创建表设计表设计”命令命令。(2)在设计视图中定义表的各个字段,包括字段名称、在设计视图中定义表的各个字段,包括字段名称、数据类型和说明数据类型和说明。(3)在)在“常规常规”选项卡中设置字段属性,如字段大小、选项卡中设置字段属性,如字段大小、标题、默认值标题、默认值等等。(4)根据需要,定义主键,建立索引根据需要,定义主键,建立索引。(5)保存保存表表。注:注:字段名可以是字段名可以是164个西文或中文字符;字段名中个西文或中文字符
24、;字段名中可以包含字母、数字、空格和特殊字符(除句号可以包含字母、数字、空格和特殊字符(除句号“。”、感叹号感叹号“!”、重音号、重音号“”“”和方括号和方括号“”之外)的之外)的任意组合,但不能以先导空格开头;字段名中不能包含任意组合,但不能以先导空格开头;字段名中不能包含控制字符(即控制字符(即031的的ASCII码)。码)。(1)文本)文本 存储文本、数字或文本与数字的组合,最多为存储文本、数字或文本与数字的组合,最多为255个中个中文或西文字符,默认为文或西文字符,默认为255。文本类型的数字不能用于计算,只能用于名称、电话号文本类型的数字不能用于计算,只能用于名称、电话号码、邮政编码
25、等。码、邮政编码等。(2)备注)备注存储较长的文本,最多为存储较长的文本,最多为65536个字符。个字符。(3)数字)数字 存储数值数据,长度为存储数值数据,长度为1、2、4、8等字节。具体的数字等字节。具体的数字类型可由类型可由“字段大小字段大小”属性进一步定义。属性进一步定义。(4)货币)货币 存储货币值,字段长度为存储货币值,字段长度为8个字节。个字节。(5)日期)日期/时间时间 存储日期和时间数据,允许范围是存储日期和时间数据,允许范围是100/1/19999/12/31。日期日期/时间数据可用于计算,长度为时间数据可用于计算,长度为8个字节。个字节。(6)自动编号)自动编号内容为数字
26、的流水号(初始值默认为内容为数字的流水号(初始值默认为1),长度为),长度为4个字节个字节 注意:在数据表中每添加一条记录时,注意:在数据表中每添加一条记录时,Access自动设置一个自动设置一个唯一连续数值(增量为唯一连续数值(增量为1)或随机数值。自动编号字段的值由)或随机数值。自动编号字段的值由系统设定,不能更改。系统设定,不能更改。(7)是)是/否否存储布尔数据,只有两个取值:存储布尔数据,只有两个取值:“是是”或或“否否”(Yes/No),“真真”或或“假假”(True/False),长度为,长度为1位。位。(8)OLE对象对象 OLE对象是指在其他应用程序中创建的、可链接或嵌入对象
27、是指在其他应用程序中创建的、可链接或嵌入(插入)到(插入)到 Access 数据库中的对象。字段长度最多为数据库中的对象。字段长度最多为 1 G 字节。字节。(9)超链接)超链接 保存超链接的地址,可以是某个文件的路径保存超链接的地址,可以是某个文件的路径UNC或或URL。该字段最多存储该字段最多存储 64,000 个字符。个字符。主键能够唯一地标识表中的一条记录。主键能够唯一地标识表中的一条记录。主键可以由一个或多个字段组成,分别称为单字段主键主键可以由一个或多个字段组成,分别称为单字段主键或多字段主键。或多字段主键。一个表中只能有一个主健。一个表中只能有一个主健。主键的值不可重复,也不可为
28、空(主键的值不可重复,也不可为空(Null)。)。如:如:【学生学生】表中的表中的“学号学号”字段。字段。定义主键的方法定义主键的方法 在设计视图中打开表,选择一个或多个字段(按下在设计视图中打开表,选择一个或多个字段(按下“Ctrl”键单击要选择的字段)。键单击要选择的字段)。单击单击“表格工具表格工具设计设计主键主键”按钮,在选中字段前出按钮,在选中字段前出现小钥匙图标,表示设定成功。现小钥匙图标,表示设定成功。再次单击再次单击“主键主键”按钮,小钥匙消失,该字段不再为主键按钮,小钥匙消失,该字段不再为主键。在保存表的时候,如果没有定义主键,在保存表的时候,如果没有定义主键,Access会
29、弹出会弹出消息框,询问用户是否创建主键消息框,询问用户是否创建主键 决定决定一个字段所占用的存储空间。该属性只对文本、数一个字段所占用的存储空间。该属性只对文本、数字和自动编号类型的字段有效。字和自动编号类型的字段有效。输入数据输入数据时必须遵守的标点、空格或其他格式要求,它可时必须遵守的标点、空格或其他格式要求,它可以限制数据输入的格式,以屏蔽非法输入。以限制数据输入的格式,以屏蔽非法输入。字段字段定义默认值后,在添加新记录时,定义默认值后,在添加新记录时,Access将自动为将自动为该字段填入默认值该字段填入默认值。7.有效性规则和有效性文本有效性规则和有效性文本 有效性有效性规则用于指定
30、对输入到本字段的数据的要求,以规则用于指定对输入到本字段的数据的要求,以保证用户输入的数据正确有效。有效性文本用于指定输保证用户输入的数据正确有效。有效性文本用于指定输入数据违反有效性规则时的提示信息。入数据违反有效性规则时的提示信息。索引用于在大量记录中索引用于在大量记录中快速检索数据,提高快速检索数据,提高查询的效率。查询的效率。通常对表中经常检索的通常对表中经常检索的字段、要排序的字段字段、要排序的字段或要在查询中联接到或要在查询中联接到其他表中字段的字段其他表中字段的字段建立索引,建立索引,OLE 对象对象类型的字段不能设置类型的字段不能设置索引。索引。索引的类型:索引的类型:(1)主
31、索引:主键就是主索引,主索引也就是主键。)主索引:主键就是主索引,主索引也就是主键。(2)唯一索引:该索引字段的值必须是唯一的,不能有)唯一索引:该索引字段的值必须是唯一的,不能有重复。重复。在在Access中,主索引只能有一个,而唯一索引中,主索引只能有一个,而唯一索引可以有多个。可以有多个。(3)普通索引:该索引字段的值可以有重复。)普通索引:该索引字段的值可以有重复。Access可以基于单个字段或多个字段创建索引。可以基于单个字段或多个字段创建索引。创建单字段索引创建单字段索引设计视图中设计视图中,单击选中字段,在单击选中字段,在“常规常规”选项卡的选项卡的“索索引引”下拉选项中选择下拉
32、选项中选择“有(有重复)有(有重复)”或或“有(无重复有(无重复)”。创建多字段索引创建多字段索引在设计视图中打开表。执行在设计视图中打开表。执行“表格工具表格工具设计设计索引索引”命令,打开命令,打开“索引索引”对话框,指定索引名称、索引字对话框,指定索引名称、索引字段、排序次序、索引类型。段、排序次序、索引类型。若要删除索引,只要选择要删除的索引名称,执行若要删除索引,只要选择要删除的索引名称,执行“删删除除”命令就可以了。命令就可以了。8.4.3 8.4.3 数据记录操作数据记录操作1.插入插入记录。在表的空行输入数据后,在表的最后会自动记录。在表的空行输入数据后,在表的最后会自动增加一
33、个空行。增加一个空行。2.删除删除记录。选中一条或多条记录,单击鼠标右键,执行记录。选中一条或多条记录,单击鼠标右键,执行弹出菜单的弹出菜单的“删除记录删除记录”命令。命令。3.在在数据表中输入图片、声音和影像。要向表中插入图片数据表中输入图片、声音和影像。要向表中插入图片、声音和影像等数据,必须将该字段定义为、声音和影像等数据,必须将该字段定义为“OLE对象对象”类型。选中一条记录的类型。选中一条记录的“OLE对象对象”字段,单击鼠标字段,单击鼠标右键,执行弹出菜单的右键,执行弹出菜单的“插入对象插入对象”命令,打开命令,打开“插入插入对象对象”窗口,选择对象类型、文件名或者新建对象。窗口,
34、选择对象类型、文件名或者新建对象。8.4.4 8.4.4 定义表之间的关系定义表之间的关系在在Access数据库中,两个表之间可以通过公共字段或语数据库中,两个表之间可以通过公共字段或语义相同的字段建立关系,使用户可以同时查询、显示或义相同的字段建立关系,使用户可以同时查询、显示或输出多个表中的数据输出多个表中的数据。在创建表之间的关系时,联接字段不一定要有相同的名在创建表之间的关系时,联接字段不一定要有相同的名称,但数据类型必须相同称,但数据类型必须相同。联接字段在一个表中通常为主键,同时作为关联表的外键,联接字段在一个表中通常为主键,同时作为关联表的外键,外键的值应与主键的值相匹配外键的值
35、应与主键的值相匹配。若联接字段在两个表中均为主键,则两表为一对一关系。若联接字段在两个表中均为主键,则两表为一对一关系。若联接字段只在一个表中为主索引,则两表为一对多关若联接字段只在一个表中为主索引,则两表为一对多关系。系。关系中处于关系中处于“一方一方”的表称为主表或父表,处于另一方的表称为主表或父表,处于另一方的表称为子表。的表称为子表。8.5.1 8.5.1 选择选择查询查询选择查询是对一个或多个表中的数据进行检索、统计、排选择查询是对一个或多个表中的数据进行检索、统计、排序、计算或汇总,不会更改表中的数据序、计算或汇总,不会更改表中的数据。1.使用使用查询向导查询向导1)操作者可在向导
36、指示下选择一个或多个数据源、一操作者可在向导指示下选择一个或多个数据源、一个或多个字段创建查询个或多个字段创建查询2)使用向导不能创建带条件的查询使用向导不能创建带条件的查询2.使用设计视图使用设计视图 1)查询设计视图组成查询设计视图组成 对象窗格 设计网格 2)使用设计视图步骤使用设计视图步骤添加数据源添加数据源表或查询表或查询选择查询内容选择查询内容字段字段填写查询条件(可选)填写查询条件(可选)设置排序(可选)设置排序(可选)3.查询条件查询条件 1)是指在查询中用于限制检索记录的条件表是指在查询中用于限制检索记录的条件表达式,由运算符、常量、字段值、函数和达式,由运算符、常量、字段值
37、、函数和字段名组成字段名组成 2)运算符:是构成条件表达式的基本元素。运算符:是构成条件表达式的基本元素。Access提供了四种运算符,分别是算术运提供了四种运算符,分别是算术运算符、关系运算符、逻辑运算符和特殊运算符、关系运算符、逻辑运算符和特殊运算符算符 算术运算符:算术运算符:+-*/关系运算符:关系运算符:=逻辑运算符:逻辑运算符:and or not 其他:其他:Between and ,如:如:Between 14 and 70 等价于等价于=14 and=70like,in,Is Null,Is Not Null设置查询条件时注意设置查询条件时注意日期型数据两边加日期型数据两边加
38、“#”,字符型数据两边,字符型数据两边加加半角双引号半角双引号在条件中在条件中字段名字段名必须用必须用方括号方括号括起来括起来两个以上条件时,同行相与,异行相或两个以上条件时,同行相与,异行相或条件中引用表名时,应用条件中引用表名时,应用方括号方括号括起来,括起来,与字段名之间用与字段名之间用“!”。如。如 教师档案教师档案表表!姓名姓名8.5.28.5.2所谓交叉表查询,就是将来源于某个表中的字段进行所谓交叉表查询,就是将来源于某个表中的字段进行分组,一组列在数据表的左侧,一组列在数据表的上分组,一组列在数据表的左侧,一组列在数据表的上部,然后在数据表行与列的交叉处显示表中某个字段部,然后在
39、数据表行与列的交叉处显示表中某个字段的各种计算值的各种计算值。与与Excel中的数据透视表一样。中的数据透视表一样。使用查询向导创建交叉表查询使用查询向导创建交叉表查询注意:若所建交叉表查询涉及多张表,或来自某个字段的部分值,使用设计视图更方便。8.5.3 SQL8.5.3 SQL查询查询SQL(Structured Query Language,结构化查询语言),是,结构化查询语言),是一种通用的且功能极其强大的关系数据库语言,也是关系一种通用的且功能极其强大的关系数据库语言,也是关系数据库的标准语言,它具有数据查询、数据定义、数据操数据库的标准语言,它具有数据查询、数据定义、数据操作、数据
40、控制等功能,包括了对数据库的所有操作。作、数据控制等功能,包括了对数据库的所有操作。在在Access中使用中使用SQL语句的步骤如下语句的步骤如下:(1)执行)执行“创建创建查询查询查询设计查询设计”命令,关闭命令,关闭“显示显示表表”对话框。对话框。(2)执行)执行“查询工具查询工具设计设计数据定义数据定义”,在数据定义,在数据定义查询窗口中输入查询窗口中输入SQL语句语句。注:注:在数据定义查询窗口中一次只能输入一条一次只能输入一条SQL语句语句。(3)单击工具栏的)单击工具栏的“运行运行”按钮按钮,执行执行SQL语句语句。(4)根据需要,将)根据需要,将SQL语句保存为一个查询对象,或直
41、语句保存为一个查询对象,或直接关闭查询窗口接关闭查询窗口。1.数据数据定义定义 CREATE语句语句-创建表格创建表格 格式:CREATE TABLE CREATE TABLE (字段完整性约束条件字段完整性约束条件,字段完整性约束条件字段完整性约束条件 )例:使用CREATE TABLE语句创建“学生情况”表。CREATE TABLE CREATE TABLE 学生情况学生情况 (学生学生ID text(20)Primary Key,ID text(20)Primary Key,姓名姓名 text(4),text(4),性别性别 text(1),text(1),出生日期出生日期 DATE,D
42、ATE,家庭住址家庭住址 text(20),text(20),联系电话联系电话 text(8),text(8),备注备注 MEMO)MEMO)61常用数据类型:数据类型字符数据类型字符自动编号Counter货币Currency文本Text(n)日期/时间Date整型Int是/否Logical单精度Float备注Memo双精度DoubleOLE对象OLEObject1.数据数据定义定义ALTER语句语句-修改表格修改表格 格式:ALTER TABLE ALTER TABLE ADD ADD DROP DROP ALTER ALTER 例:将“学生情况”表中“学生ID”字段的数据类型改为文本型,字
43、段大小为10。ALTER TABLE ALTER TABLE 学生情况学生情况 ALTER ALTER 学生学生ID text(10)ID text(10)1.数据定义数据定义 DROP语句语句-删除表格删除表格 格式:DROP TABLE DROP TABLE 例:将“学生情况”表删除。DROP TABLE DROP TABLE 学生情况学生情况2.INSERT语句语句-插入记录插入记录格式:INSERT INTO INSERT INTO (,2)VALUES(VALUES(),),2)如果INTO后缺省字段名,则必须为新记录中的所有字段赋值,且各项数据和表定义的字段顺序一一对应。例”在“授
44、课”表中插入一条新记录(8,105,96011)。INSERT INTO INSERT INTO 授课授课 VALUES(8,105,96011)VALUES(8,105,96011)3.UPDATE语句语句-更新记录更新记录格式:UPDATE UPDATE SET SET=2WHERE WHERE 例:将“教师”表中“教师编号”为“96011”教师的工作时间改为:1992-2-26。UPDATE UPDATE 教师教师 SET SET 工作时间工作时间=#1992-2-26#=#1992-2-26#WHERE WHERE 教师编号教师编号=96011=960114.DELETE语句语句-删除
45、记录删除记录格式:DELETE FROM DELETE FROM WHERE WHERE 如果不带WHERE子句,则删除表中所有的记录(该表对象仍保留在数据库中)。如果带WHERE子句,则只删除表中满足条件的记录。例:将“教师”表中教师编号为“98014”的记录删除。DELETE FROM DELETE FROM 教师教师WHERE WHERE 教师编号教师编号=98014=980145.SELECT语句语句-查询查询格式:SELECT SELECT ,FROM FROM,2WHERE WHERE GROUP BY GROUP BY 字段名字段名1 1 ORDER BY ORDER BY AS
46、C|DESC2ASC|DESC例:查找并显示“教师”表中“姓名”、“性别”、“工作时间”和“系别”4个字段。SELECT SELECT 姓名姓名,性别性别,工作时间工作时间,系别系别 FROM FROM 教师教师例:查找1992年参加工作的男教师,并显示“姓名”、“性别”、“学历”、“职称”、“系别”和“联系电话”。SELECT SELECT 姓名姓名,性别性别,学历学历,职称职称,系别系别,电话号码电话号码FROM FROM 教师教师WHERE WHERE 性别性别=男男 AND AND YEAR(YEAR(工作时间工作时间)=1992)=1992例:查找具有高级职称的教师,并显示“姓名”和
47、“职称”。SELECT SELECT 姓名姓名,职称职称FROM FROM 教师教师WHERE WHERE 职称职称 IN(IN(教授教授,副教授副教授)例:计算各类职称的教师人数,显示字段名为“各类职称人数”。SELECT Count(SELECT Count(教师编号教师编号)AS)AS 各类职称人数各类职称人数FROM FROM 教师教师GROUP BY GROUP BY 职称职称例:计算各类职称的教师人数,显示字段名为“各类职称人数”。SELECT Count(SELECT Count(教师编号教师编号)AS)AS 各类职称人数各类职称人数FROM FROM 教师教师GROUP BY
48、GROUP BY 职称职称6.连接连接运算运算多表查询时,通常需要指定两个表的联接条件,联接条件中多表查询时,通常需要指定两个表的联接条件,联接条件中的联接字段一般是两个表中的公共字段或语义相同的字段,的联接字段一般是两个表中的公共字段或语义相同的字段,该条件放在该条件放在WHERE子句子句中中。格式为:SELECT SELECT FROM FROM ,2 WHERE WHERE .=.2例:查询所有学生的学号、姓名、选修的课程号和成绩。SELECT SELECT 学生学生.学号学号,姓名姓名,课程号课程号,成绩成绩FROM FROM 学生学生,选课选课 WHERE WHERE 学生学生.学号
49、学号=选课选课.学号学号8.6 8.6 数据挖掘与大数据数据挖掘与大数据1.数据挖掘数据挖掘数据挖掘是指从数据库的大量数据中揭示出隐含的、先前数据挖掘是指从数据库的大量数据中揭示出隐含的、先前未知的并有潜在价值的信息的未知的并有潜在价值的信息的过程过程。它主要基于人工智能、机器学习、模式识别、统计学、数它主要基于人工智能、机器学习、模式识别、统计学、数据库、可视化技术等,高度自动化地分析企业的数据,做据库、可视化技术等,高度自动化地分析企业的数据,做出归纳性的推理,从中挖掘出潜在的模式,帮助决策者调出归纳性的推理,从中挖掘出潜在的模式,帮助决策者调整市场策略,减少风险,做出正确决策整市场策略,
50、减少风险,做出正确决策。“尿布与啤酒尿布与啤酒”案例案例2.大数据大数据(Big Data)大数据通常用来形容一个公司创造的大数据通常用来形容一个公司创造的大量大量非结构化数据非结构化数据和和半结构化数据半结构化数据。它的特色在于对海量数据进行分布式数据它的特色在于对海量数据进行分布式数据挖掘,例如企业组织利用相关数据和分析可以帮助它们降挖掘,例如企业组织利用相关数据和分析可以帮助它们降低成本、提高效率、开发新产品、做出更明智的业务决策低成本、提高效率、开发新产品、做出更明智的业务决策等等。工业大数据工业大数据教育大数据教育大数据学习要求学习要求1.阅读教材阅读教材2.完成书后习题。完成书后习