大学计算机基础-数据库-ACCESSppt课件.ppt
1/94华中农业大学计算机科学与技术系8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展8.2 数据库系统的特点数据库系统的特点8.3 数据库的数据模型数据库的数据模型8.4 关系数据库简介关系数据库简介8.5 SQL SQL简介简介2/94华中农业大学计算机科学与技术系3/94华中农业大学计算机科学与技术系4/94华中农业大学计算机科学与技术系某大学的全校性选修课门数有某大学的全校性选修课门数有480480多门多门全校现有学生全校现有学生3 3万多万多选修学生人次达到选修学生人次达到1.51.5万万/ /每学期每学期5/94华中农业大学计算机科学与技术系如何组织、存储、查询如何组织、存储、查询这些海量的数据信息?这些海量的数据信息?6/94华中农业大学计算机科学与技术系8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展数据数据(Data):指存储在某一介质上可以指存储在某一介质上可以鉴别的符号的集合。(文字、数字、声音、鉴别的符号的集合。(文字、数字、声音、图象)图象)信息信息(Information):指现实世界事物指现实世界事物的存在方式或运动状态的反映。具有可感知、的存在方式或运动状态的反映。具有可感知、可存储、可加工、可再生等属性。可存储、可加工、可再生等属性。数据是数据是符号化符号化的信息,信息是的信息,信息是语义化语义化的数据的数据1.数据数据和和信息信息的概念的概念7/94华中农业大学计算机科学与技术系8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展 我是一名老师,我是一名老师,讲授讲授计算机基计算机基础础,共有,共有360人人选修了这一门课选修了这一门课程;程; 他们是周倩,王他们是周倩,王玲,张成玲,张成;期;期末考试成绩分别末考试成绩分别是是90分,分,87分,分,95分分360谢宏谢宏计算机基础选修人数任课教师课程名称课程信息表课程信息表95张成张成计算机基础87王玲王玲计算机基础90周倩周倩计算机基础成绩姓名课程名称学生成绩表学生成绩表8/94华中农业大学计算机科学与技术系2. 数据处理数据处理 是指将数据转换成信息的过程是指将数据转换成信息的过程,即对,即对输入的数据进行加工整理。输入的数据进行加工整理。信息数据数据处理信息数据数据处理数据是原料,是输入,而信息是产出,数据是原料,是输入,而信息是产出,是输出结果。是输出结果。“信息处理信息处理”的真正含义应该的真正含义应该是为了产生信息而处理数据。是为了产生信息而处理数据。8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展9/94华中农业大学计算机科学与技术系3.3.数据管理数据管理数据管理是指对数据的数据管理是指对数据的组织组织、分类分类、编编码码、存储存储、检索检索和和维护维护。数据处理的中心问题数据处理的中心问题是是数据管理。数据管理。 数据管理技术的发展过程数据管理技术的发展过程n人工管理阶段人工管理阶段(40(40年代中年代中-50-50年代中年代中) )n文件系统阶段文件系统阶段(50(50年代末年代末-60-60年代中年代中) )n数据库系统阶段数据库系统阶段(60(60年代末年代末-现在现在) )8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展10/94华中农业大学计算机科学与技术系人工管理阶段人工管理阶段应用程序应用程序1 1应用程序应用程序n n.数据组数据组1 1数据组数据组n n.8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展产生背景:产生背景:应用需求应用需求 科学计算科学计算硬件水平硬件水平 无直接存取设备无直接存取设备软件水平软件水平 没有操作系统没有操作系统特点:特点:数据库的管理者:某一应用程数据库的管理者:某一应用程序,数据不保存序,数据不保存数据面向的对象:某一应用程数据面向的对象:某一应用程序序数据的共享程度:无共享、冗数据的共享程度:无共享、冗余度极大余度极大数据的独立性:不独立,完全数据的独立性:不独立,完全依赖于程序依赖于程序11/94华中农业大学计算机科学与技术系 文件系统阶段:文件系统阶段:50年代末年代末-60年代年代应用程序应用程序1 1应用程序应用程序n n.数据组数据组1 1数据组数据组m m.文件文件系统系统8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展产生背景:产生背景:应用需求应用需求 科学计算、管理科学计算、管理硬件水平硬件水平 磁盘、磁鼓磁盘、磁鼓软件水平软件水平 有文件系统有文件系统特点:特点:数据库的管理者:文件数据库的管理者:文件系统,数据可以长期保系统,数据可以长期保存存数据面向的对象:某一数据面向的对象:某一应用程序应用程序数据的共享程度:共享数据的共享程度:共享性差、冗余度大性差、冗余度大数据的独立性:独立性数据的独立性:独立性差,数据的逻辑结构必差,数据的逻辑结构必须修改应用程序须修改应用程序12/94华中农业大学计算机科学与技术系应用程序应用程序1 1应用程序应用程序n n.DBMSDB数据库系统阶段:数据库系统阶段:60年代以来年代以来8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展产生背景:产生背景:应用需求应用需求 大规模管理大规模管理硬件水平硬件水平 大容量磁盘、磁盘阵列大容量磁盘、磁盘阵列软件水平软件水平 有数据库管理系统有数据库管理系统13/94华中农业大学计算机科学与技术系采用复杂的结构化的数据模型采用复杂的结构化的数据模型数据的共享性高,冗余度低,易扩充数据的共享性高,冗余度低,易扩充有较高的数据独立性有较高的数据独立性安全性安全性:设置用户的使用权限;在数据库被破坏:设置用户的使用权限;在数据库被破坏时,系统有能力把数据库恢复到可用状态。时,系统有能力把数据库恢复到可用状态。完整性完整性:统采用一些完整性检验以:统采用一些完整性检验以确保确保数据符合数据符合某些某些规则规则,保证数据库中数据始终是,保证数据库中数据始终是正确正确的。的。 数据库系统数据库系统的特点的特点数据库系统的特点数据库系统的特点14/94华中农业大学计算机科学与技术系4.数据库系统的基本概念数据库系统的基本概念1)数据库数据库( DB,Database ) 是是长期长期储存在计算机内的、有储存在计算机内的、有组织组织的、可的、可共共享享的数据集合。的数据集合。 数据库中的数据按一定的数据库中的数据按一定的数据模型数据模型组织、存组织、存储和描述,由储和描述,由DBMS统一管理,供多用户共享。统一管理,供多用户共享。顾名思义,数据库就是存放数据顾名思义,数据库就是存放数据的仓库。只不过这个仓库中的数的仓库。只不过这个仓库中的数据是按照一定的格式存放在计算据是按照一定的格式存放在计算机上。机上。8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展15/94华中农业大学计算机科学与技术系2)2)数据库管理系统数据库管理系统( DBMS,DatabaseDBMS,Database Management SystemManagement System)对数据库进行管理的对数据库进行管理的系统软件系统软件。数据库数据库应用程序应用程序 2 2应用程序应用程序 1 1数据库数据库管理系统管理系统DBMSDBMS有效地有效地管理管理数据数据库库,为用户提供一个,为用户提供一个可以方便、有效地可以方便、有效地存存取取数据库数据的软件数据库数据的软件环境环境。8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展用户能更方便、更有效、更可靠地建立数据库和使用用户能更方便、更有效、更可靠地建立数据库和使用其中的信息资源。其中的信息资源。16/94华中农业大学计算机科学与技术系DBMSDBMS是在是在OSOS支持下工作的数据库管理软件支持下工作的数据库管理软件对内,它负责管理数据库对内,它负责管理数据库对外,它向用户提供一整套命令,用于合法对外,它向用户提供一整套命令,用于合法用户对数据库的各种操作;包括创建用户对数据库的各种操作;包括创建DBDB、定、定义数据、增、删、改义数据、增、删、改DBDB记录、统计计算等记录、统计计算等8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展17/94华中农业大学计算机科学与技术系 DBMS功能功能 数据定义功能;数据定义功能;DDL,用户通过,用户通过DDL描述数据及描述数据及结构形式;结构形式; 数据操纵功能:数据操纵功能:DML,实现数据库的存取操作;,实现数据库的存取操作;如数据的查询、插入、删除、修改等;如数据的查询、插入、删除、修改等; 数据库运行控制功能:包括并发控制、安全性检数据库运行控制功能:包括并发控制、安全性检测、完整性约束条件的检查和执行、数据库的内测、完整性约束条件的检查和执行、数据库的内部维护等。部维护等。 数据库的建立和维护功能:数据库初始数据的输数据库的建立和维护功能:数据库初始数据的输入、转换功能、数据库的转出、恢复功能等入、转换功能、数据库的转出、恢复功能等8.1 数据库系统的基本概念和发展数据库系统的基本概念和发展18/94华中农业大学计算机科学与技术系常用常用DBMS简介简介 Microsoft Access 功能强大、简功能强大、简单易用;单易用;面向桌面的数面向桌面的数据库;完全的个据库;完全的个人数据库;人数据库;多用于开发小多用于开发小型的数据库管理型的数据库管理的的Windows应用应用程序程序 SQL Server 功能完备的正功能完备的正规规DBMS比较简单易学比较简单易学多用于中、小多用于中、小企业局域网中企业局域网中的数据库管理的数据库管理 Oracle 大型数据库大型数据库多用户及移植性多用户及移植性良好的备份和恢复良好的备份和恢复能力能力可靠的安全性可靠的安全性可同时适用于大、可同时适用于大、中、小型机和微机的中、小型机和微机的网络数据库管理系统网络数据库管理系统19/94华中农业大学计算机科学与技术系3 3)数据库系统)数据库系统(DBS)数据库系统(数据库系统(Database SystemDatabase System,DBSDBS)是指在计算机系统中引入数据库后的系统是指在计算机系统中引入数据库后的系统构成构成一般由一般由数据库数据库、硬件硬件、软件软件(数据库管(数据库管理系统及其开发工具)、理系统及其开发工具)、用户用户构成构成20/94华中农业大学计算机科学与技术系软软件件硬件系统硬件系统应用系统应用系统数据库管理系统数据库管理系统数据库数据库数据库管理员数据库管理员操作系统操作系统应用开发工具应用开发工具用户用户用户用户用户用户硬件硬件 包括包括CPUCPU、内存和、内存和外部设备等。要求外部设备等。要求足够大的存储能力足够大的存储能力和足够高的数据传和足够高的数据传输能力。输能力。软件软件 主要包括:支持主要包括:支持DBMSDBMS运行的操作系统、运行的操作系统、DBMSDBMS本身及开发工具。本身及开发工具。数据库数据库 设计合理、满设计合理、满足需求的数据库足需求的数据库存放数据。存放数据。用户用户 开发、管理、使用和维开发、管理、使用和维护数据库的人员。护数据库的人员。DBSDBDBMSAPPLICATION DBAUSER 21/94华中农业大学计算机科学与技术系数据模型:数据模型:对现实世界的事物进行抽象以反映其特征的对现实世界的事物进行抽象以反映其特征的工具工具通俗地讲数据模型就是通俗地讲数据模型就是现实世界的模拟现实世界的模拟;数据模型应该满足三个方面的要求数据模型应该满足三个方面的要求n 能比较真实的模拟现实世界能比较真实的模拟现实世界n 容易为人所理解容易为人所理解n 便于在计算机上实现便于在计算机上实现8.3 数据模型数据模型22/94华中农业大学计算机科学与技术系8.3 数据模型数据模型 三类数据模型三类数据模型 概念模型:按照用户的观点对数据和信息建模;概念模型:按照用户的观点对数据和信息建模; 逻辑模型:按照计算机系统的观点对数据建模;逻辑模型:按照计算机系统的观点对数据建模; 物理模型:对数据最底层的抽象,描述数据在系物理模型:对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存储方法。的存储方式和存储方法。现实现实世界世界认识、抽象认识、抽象信息信息世界世界概概 念念 模模 型型机器机器世界世界DBMSDBMS支持的数据支持的数据 模型模型23/94华中农业大学计算机科学与技术系8.3 数据模型数据模型 数据模型的三要素数据模型的三要素1数据结构:数据结构:所研究的对象所研究的对象类型的集合,类型的集合,描述系统的静描述系统的静态特性。态特性。2数据操作:数据操作:对数据库中个对数据库中个对象的实例允对象的实例允许执行的操作许执行的操作的集合。动态的集合。动态特性特性数据的约束数据的约束条件:条件:一组完整性一组完整性规则的集合:规则的集合:正确性、有效正确性、有效性、相容性性、相容性324/94华中农业大学计算机科学与技术系 实体实体(Entity):客观存在客观存在并可并可相互区别相互区别的事物。实体可以是实际事物,也可以的事物。实体可以是实际事物,也可以是抽象事件。是抽象事件。2.2.在信息世界中,可用以下术语描述现实世界:在信息世界中,可用以下术语描述现实世界: 属性属性(Attribute):实体的性质。一个:实体的性质。一个实体可由若干个属性来描述。实体可由若干个属性来描述。 域域(Domain):属性的取值范围。:属性的取值范围。8.3 数据模型数据模型 实体集:相同类型实体的集合。实体集:相同类型实体的集合。 码:能唯一标识某个实体的属性集。码:能唯一标识某个实体的属性集。25/94华中农业大学计算机科学与技术系域域:实体集实体集:全体在校学生:全体在校学生码码:学号:学号举例:举例: 实体实体:学生:学生属性属性:定长的字符串定长的字符串文本文本( (男,女男,女) )本校存在的院系本校存在的院系 数字数字(10-60)(10-60)学号、姓名、性别、院系、年龄学号、姓名、性别、院系、年龄8.3 数据模型数据模型26/94华中农业大学计算机科学与技术系 联系:实体集之间的关系称为联系:实体集之间的关系称为联系联系,反映了现实世界事物之间的相互关联。反映了现实世界事物之间的相互关联。联系也是实体,也可具有属性。联系也是实体,也可具有属性。一对一的联系一对一的联系(1:1)(1:1)一对多的联系一对多的联系(1:n)(1:n)多对多的联系多对多的联系(m:n)(m:n)8.3 数据模型数据模型27/94华中农业大学计算机科学与技术系三个世界各术语的对应关系三个世界各术语的对应关系 现实世界现实世界 信息世界信息世界 计算机世界计算机世界事物总体事物总体 实体集实体集 文件文件事物个体事物个体 实体实体 记录记录特征特征 属性属性 字段字段事物间联系事物间联系 实体模型实体模型 数据模型数据模型 8.3 数据模型数据模型28/94华中农业大学计算机科学与技术系目前常用的数据模型有:目前常用的数据模型有: 层次模型层次模型(Hierarchical Model) 网状模型网状模型(Network Model) 关系模型关系模型(Relational Model)8.3 数据模型数据模型29/94华中农业大学计算机科学与技术系层次模型是把数据之间的关系纳入一种层次模型是把数据之间的关系纳入一种一对多一对多的层次框架的层次框架来加以描述。来加以描述。特点:特点:每个模型中只有一个称为根的最高结点每个模型中只有一个称为根的最高结点其它结点都只能和一个父结点相连接(其它结点都只能和一个父结点相连接(1:M1:M)查询、访问都必须从根结点开始查询、访问都必须从根结点开始最有影响的层次模型的最有影响的层次模型的DBSDBS是是6060年代末,年代末,IBMIBM公公司推出的司推出的IMSIMS层次模型数据库系统。层次模型数据库系统。8.3 数据模型数据模型30/94华中农业大学计算机科学与技术系校长校长校长办公室校长办公室 各学院各学院 各职能处各职能处 ( 理学院)理学院)计算机系计算机系 化学系化学系 物理系物理系 计算机教学实验中心计算机教学实验中心网络所网络所 . . 软件教研室软件教研室8.3 数据模型数据模型31/94华中农业大学计算机科学与技术系网状模型是可以方便地描述数据之间网状模型是可以方便地描述数据之间多对多联多对多联系的模型系的模型,其特点:,其特点:可有可有0 0个或多个结点无双亲个或多个结点无双亲允许结点有多个双亲允许结点有多个双亲允许结点间有允许结点间有2 2种以上的关系种以上的关系存取、访问必须按事先定义好的路径进行存取、访问必须按事先定义好的路径进行(从指定出发点)(从指定出发点)8.3 数据模型数据模型32/94华中农业大学计算机科学与技术系例如,教务管理系统例如,教务管理系统 学生和课程的网状模型图学生和课程的网状模型图 学生学生教学课程表教学课程表教室教室课程课程教师教师8.3 数据模型数据模型33/94华中农业大学计算机科学与技术系关系模型是把存放在数据库中的数据和它们之关系模型是把存放在数据库中的数据和它们之间的联系看作是间的联系看作是一张二维表一张二维表,一个表即一个关,一个表即一个关系。其特点:系。其特点:1 1)每一列不可再分;每一列不可再分;2 2)同一关系中属性)同一关系中属性( (字段字段) )不允许重名不允许重名3 3)关系中不允许有完全相同的元组)关系中不允许有完全相同的元组4 4)关系中交换任意两行的位置不影响数据的实际)关系中交换任意两行的位置不影响数据的实际含义;含义;5 5)关系中交换任意两列的位置不影响数据的实际)关系中交换任意两列的位置不影响数据的实际含义。含义。8.3 数据模型数据模型34/94华中农业大学计算机科学与技术系江苏江苏体育体育1919男男李明李明200613111200613111浙江浙江艺术艺术1818男男杨志杨志200614026200614026湖北湖北英语英语1818女女高杏高杏200613228200613228籍贯籍贯院系院系年龄年龄性别性别姓名姓名学号学号关关 系系一个关系对应一个按行、列排列的二维表,一个关系对应一个按行、列排列的二维表,二维表名就是关系名。二维表名就是关系名。 关系关系模式模式在二维表中的行定义(记录的型),即对关系在二维表中的行定义(记录的型),即对关系的描述,称为关系模式。一般表示为:关系名的描述,称为关系模式。一般表示为:关系名(属性(属性1 1,属性,属性2 2,属性,属性n n)。例:学生(学号,姓名,性别,年龄,院系,例:学生(学号,姓名,性别,年龄,院系,籍贯)籍贯)学生学生8.3 数据模型数据模型35/94华中农业大学计算机科学与技术系1 1元组元组(Tuple)在二维表中,从第二行起的每一行称为一个元组,在在二维表中,从第二行起的每一行称为一个元组,在文件中对应一条具体记录。文件中对应一条具体记录。2 2属性属性(Attribute)二维表中,每一列称为一个属性,在文件中对应一个二维表中,每一列称为一个属性,在文件中对应一个字段。字段。3 3属性名属性名: :二维表第一行显示的每一列的名称,在文件中对应字二维表第一行显示的每一列的名称,在文件中对应字段名,例如段名,例如“姓名姓名”,“性别性别”等。等。4 4属性值属性值: : 行和列的交叉位置表示某个属性的值。行和列的交叉位置表示某个属性的值。5 5域域(Domain):表示各个属性的取值范围。表示各个属性的取值范围。8.3 数据模型数据模型36/94华中农业大学计算机科学与技术系6 6表结构表结构表中的第一行,表示组成该表的各个字段名称,表中的第一行,表示组成该表的各个字段名称,各字段取值的类型、宽度等。各字段取值的类型、宽度等。7 7候选码候选码关系中用来惟一标识一个元组的属性或属性组。关系中用来惟一标识一个元组的属性或属性组。8 8主码主码从候选键中指定一个用来标识元组。从候选键中指定一个用来标识元组。StudentStudent表中的主键为:学号表中的主键为:学号8.3 数据模型数据模型37/94华中农业大学计算机科学与技术系 在关系模型中,实体是用关系来表示的,在关系模型中,实体是用关系来表示的,如:如:学生(学号,姓名,性别,年龄,系别)学生(学号,姓名,性别,年龄,系别)课程(课程号,课程名,课时)课程(课程号,课程名,课时) 实体间的关系也是用关系来表示的,实体间的关系也是用关系来表示的,如如: :学生和课程之间的关系学生和课程之间的关系选课关系(学号,课程号,成绩)选课关系(学号,课程号,成绩) 学生 学号 姓名 系别 选课 学号 课程号 成绩 课程 课程号 课程名 学分 8.3 数据模型数据模型38/94华中农业大学计算机科学与技术系关系运算关系运算1)1)选择选择(Selection):(Selection):从指定的关系中选择满从指定的关系中选择满足给定条件的元组组成新的关系。足给定条件的元组组成新的关系。例题:例题:从关系从关系score1score1中选择数学大于中选择数学大于9090的元组组的元组组成关系成关系S1S1。8.3 数据模型数据模型39/94华中农业大学计算机科学与技术系2)2)投影投影(Projection)(Projection)从指定关系的属性集合中选取若干个属性组成从指定关系的属性集合中选取若干个属性组成新的关系。新的关系。例题:例题:从关系从关系score1score1中选择中选择“学号学号”、“姓姓名名”、“数学数学”组成新的关系组成新的关系S2S2。关系R)(,.2,1RAnAA8.3 数据模型数据模型40/94华中农业大学计算机科学与技术系3)3)连接连接(Join)(Join)两个关系中的元组按指定条件组合新的关系两个关系中的元组按指定条件组合新的关系例题例题: :将将score1score1和和score2score2按相同学号合并按相同学号合并8.3 数据模型数据模型41/94华中农业大学计算机科学与技术系数据库应用系统的开发数据库应用系统的开发1. DBAS (DateBase ApplicationSystem)开发方法开发方法:根据用户需求设计数据库结构及应用系统的根据用户需求设计数据库结构及应用系统的过程。过程。 数据库设计数据库设计是指对于是指对于给定给定的的应用环境应用环境,构造最优的构造最优的数据库模式数据库模式,建立数据库及其,建立数据库及其应用系统,是之能够有效地存储数据,满应用系统,是之能够有效地存储数据,满足用户的信息和处理要求。足用户的信息和处理要求。42/94华中农业大学计算机科学与技术系2. DBAS (DateBase ApplicationSystem)开发步骤开发步骤:数据库应用系统的开发数据库应用系统的开发 1 全面、准确了解用户的实际需求;全面、准确了解用户的实际需求; 2 对用户需求进行综合、归纳与抽象,形成独立于具体对用户需求进行综合、归纳与抽象,形成独立于具体 DBMS的概念模型,是整个数据库设计的关键;的概念模型,是整个数据库设计的关键; 3 将概念结构转换为所选用将概念结构转换为所选用DBMS支持的数据模型并优化;支持的数据模型并优化; 4 选取一个最适合应用环境的物理结构;选取一个最适合应用环境的物理结构; 5 利用数据库语言,建立数据库,编制调试应用程序,组利用数据库语言,建立数据库,编制调试应用程序,组织数据入库,并进行试运行;织数据入库,并进行试运行; 6 数据库运行,并评价、调整与修改。数据库运行,并评价、调整与修改。 分析与设计阶段实现与运行阶段43/94华中农业大学计算机科学与技术系 SQL全称是结构化查询语言(全称是结构化查询语言(Structured Query Language),是数据库中使用的标准数据查询语言,),是数据库中使用的标准数据查询语言,IBM公司最早使用在其开发的数据库系统中,公司最早使用在其开发的数据库系统中,1986年年10月,月,美国美国ANSI对对SQL进行规范后作为关系数据库管理系统的标进行规范后作为关系数据库管理系统的标准语言准语言(ANSI X3. 135-1986),1987年得到国际标准化组织年得到国际标准化组织的支持成为国际标准。就象的支持成为国际标准。就象SQL的名字一样,我们可以通过的名字一样,我们可以通过容易理解的查询语言,来和数据库打交道,从数据库中得到容易理解的查询语言,来和数据库打交道,从数据库中得到我们想要的数据。我们想要的数据。SQL 概述概述44/94华中农业大学计算机科学与技术系 SQL( (Structured Query Language) ),结,结构化查询语言,是关系数据库的通用语言。构化查询语言,是关系数据库的通用语言。 用用SQL可实现可实现DB生命周期的全部活动,生命周期的全部活动,包括:包括: DDL:建立、删除和修改数据对象:建立、删除和修改数据对象 DML:完成数据操作的命令,如更新数据:完成数据操作的命令,如更新数据 DQL:查询数据:查询数据 DCL:控制对数据库的访问,服务器的关闭、启动等:控制对数据库的访问,服务器的关闭、启动等SQL 概述概述45/94华中农业大学计算机科学与技术系 SQL查询语句的一般格式:查询语句的一般格式: SELECT ALL|DISTINCT ,. FROM ,. WHERE GROUP BY HAVING ORDER BY ASC|DESC;:必选项:必选项 :可选项:可选项 | :或者:或者 说明说明 SELECT:构成查询结果的属性列:构成查询结果的属性列 FROM:作查询的表:作查询的表 WHERE:查询条件:查询条件SQL 查询查询46/94华中农业大学计算机科学与技术系设有如下关系表:设有如下关系表:n 读者读者( (图书证号图书证号, 学号学号, 姓名姓名, 性别性别, 院系院系, 是否挂失是否挂失) ) n 图书图书( (图书条码图书条码, 类别类别, 书名书名, 作者作者, 出版社出版社, 单价单价, 入库时间入库时间, 简介简介, 在库否在库否) )n 借阅借阅( (图书证号图书证号, 图书条码图书条码, 借阅时间借阅时间, 归还时间归还时间) ) SQL 查询查询47/94华中农业大学计算机科学与技术系 单表查询单表查询 例:查询图书的基本信息,显示图书名称、例:查询图书的基本信息,显示图书名称、作者和出版社。作者和出版社。SELECT 书名,作者,出版社书名,作者,出版社 FROM 图书;图书;SQL 查询查询48/94华中农业大学计算机科学与技术系 通过通过WHERE子句引导条件表达式子句引导条件表达式 例:查询理学院读者的所有信息。例:查询理学院读者的所有信息。 select * from 读者读者 where 院系院系 = 理学院理学院; 条件查询条件查询选取表中所有属性列选取表中所有属性列SQL 查询查询49/94华中农业大学计算机科学与技术系 SQL中的运算符中的运算符1. 算术运算符:算术运算符:+,-,*,/2. 逻辑运算符:与逻辑运算符:与 AND、或、或 OR, 非非NOT3. 比较运算符:比较运算符:=,!=,=,=4. 判断是否是集合的成员:判断是否是集合的成员:IN,NOT IN, ANY,ALL5. 判断是否满足指定的区间:判断是否满足指定的区间:BETWEEN AND 6. 模糊匹配:模糊匹配:LIKE7. 判断是否空值:判断是否空值:IS NOT NULL 条件查询条件查询SQL 查询查询50/94华中农业大学计算机科学与技术系 例:查询价格在例:查询价格在20元到元到40元之间的计算机元之间的计算机类图书的条码及名称。类图书的条码及名称。select 图书条码,书名图书条码,书名 from 图书图书where 类别类别= 计算机计算机 and 单价单价 between 20 and 40; 条件查询条件查询SQL 查询查询51/94华中农业大学计算机科学与技术系 例:查询图书证号为例:查询图书证号为L00001、S00002、J00001的读者借阅图书的信息。的读者借阅图书的信息。select * from 借阅借阅where 图书证号图书证号 in ( (L00001,S00002,J00001) ); 条件查询条件查询SQL 查询查询52/94华中农业大学计算机科学与技术系 模糊匹配符模糊匹配符 _ :匹配任意一个字符:匹配任意一个字符 %:匹配任意多个字符:匹配任意多个字符( (包括包括0个个) ) 例:查询书名以例:查询书名以“信息信息”开头的图书的信息。开头的图书的信息。 select * from 图书图书 where 书名书名 like 信息信息% ; 条件查询条件查询SQL 查询查询53/94华中农业大学计算机科学与技术系 GROUP BY子句可将查询结果的各记录按子句可将查询结果的各记录按一列或多列取值相等的原则进行分组一列或多列取值相等的原则进行分组 例:统计各类图书的总数,显示图书的例:统计各类图书的总数,显示图书的类别及总数。类别及总数。 对查询结果分组对查询结果分组SQL 查询查询54/94华中农业大学计算机科学与技术系 SQL中的集函数中的集函数 COUNT( (*) ) 统计元组个数统计元组个数 COUNT( (DISTINCT|ALL ) )统计一列中统计一列中值的个数值的个数 SUM( (DISTINCT|ALL ) ) 计算一列中值计算一列中值的总和的总和( (此列必须是数值型此列必须是数值型) ) AVG( (DISTINCT|ALL ) )计算一列中值计算一列中值的平均值的平均值( (此列必须是数值型此列必须是数值型) ) MAX( (DISTINCT|ALL ) )求最大值求最大值 MIN( (DISTINCT|ALL ) )求最小值求最小值 DISTINCT:计算时忽略指定列中的重复值:计算时忽略指定列中的重复值 ALL:不忽略重复值,是缺省值:不忽略重复值,是缺省值SQL 查询查询55/94华中农业大学计算机科学与技术系 对查询结果分组对查询结果分组select 图书条码,图书条码,count( (* *) ) as 借出次数借出次数from 借阅借阅group by 图书条码;图书条码; 例:统计各图书的借出次数,显示图书例:统计各图书的借出次数,显示图书的条码及借出次数。的条码及借出次数。SQL 查询查询56/94华中农业大学计算机科学与技术系 使用使用HAVING短语可将分组后的各组按条件短语可将分组后的各组按条件作进一步筛选作进一步筛选 例:求借出次数超过例:求借出次数超过1次的图书。次的图书。select 图书条码图书条码from 借阅借阅group by 图书条码图书条码having count( (*) )1; 对查询结果分组对查询结果分组SQL 查询查询57/94华中农业大学计算机科学与技术系 WHERE与与HAVING的区别的区别 WHERE作用于基本表或视图,从中选择作用于基本表或视图,从中选择满足条件的元组;满足条件的元组;HAVING作用于分组,从作用于分组,从中筛选出满足条件的分组。中筛选出满足条件的分组。 对查询结果分组对查询结果分组SQL 查询查询58/94华中农业大学计算机科学与技术系 ORDER BY子句可将查询结果的各行按子句可将查询结果的各行按一列或多列的取值作升或降的排列。一列或多列的取值作升或降的排列。 例:查询所有图书的情况,按出版社升序例:查询所有图书的情况,按出版社升序排列,对同出版社的图书按书名降序排列。排列,对同出版社的图书按书名降序排列。 select * from 图书图书 order by 出版社,书名出版社,书名 desc; 缺省排序顺序是升序缺省排序顺序是升序( (ASC) ),若要按降序,若要按降序输出,需指定输出,需指定DESC 对查询结果排序对查询结果排序SQL 查询查询59/94华中农业大学计算机科学与技术系 WHERE引导连接条件引导连接条件 连接条件的一般格式:连接条件的一般格式: . . 或:或: . BETWEEN . AND . 条件中作比较的各字段类型须是可比的,条件中作比较的各字段类型须是可比的,但不必相同但不必相同 连接查询连接查询SQL 查询查询60/94华中农业大学计算机科学与技术系 例:查询图书证号为例:查询图书证号为L00001的读者所借阅图书的读者所借阅图书的名称。的名称。select 书名书名from 借阅借阅, 图书图书where 借阅借阅.图书条码图书条码=图书图书.图书条码图书条码 and 图书证号图书证号=L00001; 连接查询连接查询SQL 查询查询61/94华中农业大学计算机科学与技术系 例:查询读者例:查询读者及其及其所借图书的信息,显示读者的所借图书的信息,显示读者的图书证号、姓名、所借图书的书名和类别。图书证号、姓名、所借图书的书名和类别。select 读者读者.图书证号图书证号, 姓名姓名, 书名书名, 类别类别from 读者读者, 图书图书, 借阅借阅 where 读者读者.图书证号图书证号=借阅借阅.图书证号图书证号 and 借阅借阅.图书条码图书条码=图书图书.图书条码;图书条码; 连接查询连接查询SQL 查询查询62/94华中农业大学计算机科学与技术系1. Access的功能特点的功能特点存储文件单一存储文件单一:一:一个个AccessAccess数据库对应一个数据库对应一个.MDB.MDB文件。包含数据表、查询及其他对象。文件。包含数据表、查询及其他对象。可处理多种数据信息可处理多种数据信息:如文本文件以及其它数据:如文本文件以及其它数据库系统的数据库文件。库系统的数据库文件。提供编程语言提供编程语言VBA(VisualVBA(Visual Basic for Basic for Applications)Applications),以及全面开放的对象类型库,以及全面开放的对象类型库,可创建高性能的桌面信息管理系统。可创建高性能的桌面信息管理系统。具有网络功能具有网络功能:可通过:可通过InternetInternet网发布。网发布。63/94华中农业大学计算机科学与技术系2. Access的窗口的窗口数据库窗口数据库窗口对象选项卡对象选项卡对象列表对象列表64/94华中农业大学计算机科学与技术系 数据库是所有信息的集合数据库是所有信息的集合 每个数据库是一个文件,扩展名每个数据库是一个文件,扩展名为为.MDB1. Access的数据库的数据库65/94华中农业大学计算机科学与技术系2. 建立数据库建立数据库 自定义创建空数据库自定义创建空数据库 step:1)“文件文件” | “新建新建” 2)“新建文件新建文件” 中的中的“空数据库空数据库”66/94华中农业大学计算机科学与技术系2.建立数据库建立数据库 使用使用“数据库向导数据库向导” step:1)“新建文件新建文件” 中的中的“本机上的模本机上的模板板” 2)选择)选择“数据库数据库”中的数据库类型中的数据库类型n step: 3)“确定确定” 4)给定数据库名、)给定数据库名、选择保存位置选择保存位置 5)“创建创建” 6)“下一下一步步”67/94华中农业大学计算机科学与技术系o 表中存放数据,是表中存放数据,是记录记录的集合的集合o 每条每条记录记录表示一个完整的数据,由表示一个完整的数据,由字段字段组成组成o 一个一个字段字段对应表中的一列对应表中的一列IS19男男张立张立05004MA18女女王敏王敏05003IS19女女刘晨刘晨05002CS20男男李勇李勇05001SdeptSage SsexSname Sno记录记录字段字段1. Access的表的表68/94华中农业大学计算机科学与技术系 数据表由表结构和记录两部分组成。