数据库应用基础讲义tw_第1页
数据库应用基础讲义tw_第2页
数据库应用基础讲义tw_第3页
数据库应用基础讲义tw_第4页
数据库应用基础讲义tw_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库应用基础数据库应用基础 数据库的基本概念数据库的基本概念 数据库系统的组成及特点数据库系统的组成及特点 数据模型数据模型 关系数据库的基本概念关系数据库的基本概念 及基本操作及基本操作 本章知识要点本章知识要点5.1 数据库概述数据库概述 5.1.1 数据库应用实例数据库应用实例 5.1.2 数据库的基本术语数据库的基本术语 5.1.3 数据库技术的发展数据库技术的发展本本节内节内容容l 超市销售系统超市销售系统 铁路售票系统铁路售票系统 图书馆管理系统图书馆管理系统 银行业务系统银行业务系统 学校教学管理系统学校教学管理系统 能列出哪能列出哪些管理需些管理需要大批量要大批量数据吗数据吗

2、 ?简单地说,简单地说,数据库数据库是相关是相关信息信息的集合。的集合。为了实现计算机的信息管理和处理,为了实现计算机的信息管理和处理,必须科学合理地建立数据库,必须科学合理地建立数据库,要有相应要有相应系统软件系统软件的支持,而且要开的支持,而且要开发出相应业务的发出相应业务的应用软件应用软件。 5.1.2 数据库的基本术语数据库的基本术语 数据数据(Data)(Data)是用来记录信息的可是用来记录信息的可识别的符号,是数据库中存储的识别的符号,是数据库中存储的基本对象。基本对象。 数数 据据 245.78礼貌礼貌aBkWG5.1.2 数据库的基本术语数据库的基本术语数据库数据库(Data

3、Base,DB)是长期存放是长期存放在计算机外存上、有结构的、可共享在计算机外存上、有结构的、可共享的相关数据的集合。的相关数据的集合。 数数 据据 库库5.1.2 数据库的基本术语数据库的基本术语数据库管理系统数据库管理系统(DBMS)是用于)是用于建立、使用和维护数据库的系统软件建立、使用和维护数据库的系统软件数据库管理系统数据库管理系统 数据库管理系统数据库管理系统是位于操作系统之上的是位于操作系统之上的一层一层系统软件系统软件。5.1.3 数据库技术的发展数据库技术的发展1第一阶段第一阶段人人工工管管理理阶阶段段第二阶段第二阶段文文件件系系统统阶阶段段第三阶段第三阶段数数据据库库系系统

4、统阶阶段段特点特点: 数据不保存在计算机内。数据不保存在计算机内。 没有专用的软件对数据进行管理。没有专用的软件对数据进行管理。 只有程序的概念,没有文件的概念。只有程序的概念,没有文件的概念。 一组数据对应一个程序。一组数据对应一个程序。人工管理阶段学生处学生处教务处教务处人事处人事处学生信息数据集学生信息数据集课程信息数据集课程信息数据集教师信息数据集教师信息数据集应用程序应用程序1应用程序应用程序2应用程序应用程序n数据组数据组1数据组数据组2数据组数据组n应用程序应用程序1应用程序应用程序2应用程序应用程序n学生数据文件学生数据文件课程数据文件课程数据文件教师数据文件教师数据文件文件管

5、理阶段(50后期-60中期)文文件件系系统统缺点:共享性差,数据冗余度大缺点:共享性差,数据冗余度大 文件系统中,数据为什么难以共享呢?v1005张三张三7006151800设计所设计所v职工号职工号 姓名姓名 出生日期出生日期 工资工资 部门部门v 1005 张三张三 700615 1800 设计所设计所v文件系统中,数据的含义不明显文件系统中,数据的含义不明显定义数据时定义数据时,能把数据的含义也定义进去;存储数据时存储数据时,能一起存储数据的含义;显示数据时显示数据时,能同时显示数据的含义,成为改进文件系统的关键。从而出现了数据管理的新方式数据库系统。在数据库系统中,数据以一种全新的方式

6、 数据库存储;管理数据库的生成、修改、使用的是一种新的管理数据的软件数据库管理系统。应用程序应用程序1应用程序应用程序2应用程序应用程序n数据库数据库 数据库数据库管理系统管理系统v数据库管理阶段(60后期-)5.2 数据库系统数据库系统 5.2.1 5.2.1 数据库系统的组成数据库系统的组成 5.2.2 5.2.2 数据库系统的三级模式结构数据库系统的三级模式结构 5.2.3 5.2.3 数据库管理系统简介数据库管理系统简介 本本节内节内容容 5.2.4 5.2.4 数据库系统的特点数据库系统的特点 数据库系统数据库系统( (DataBaseDataBase System System,D

7、BS)DBS) 是指在计算机系统中引入了数是指在计算机系统中引入了数据库技术后的系统,它包括硬据库技术后的系统,它包括硬件、软件和人员等部分。件、软件和人员等部分。v数据库数据库DB强调的是数据强调的是数据v数据库管理系统数据库管理系统DBMS 是系统软件是系统软件v数据库系统数据库系统DBS强调的是整个强调的是整个 应用系统应用系统5.2.1 数据库系统的组成数据库系统的组成 用户用户1用户用户2用户用户3数据库管理员数据库管理员数据库数据库图图5.3 5.3 数据库系统组成数据库系统组成示意图示意图应用系统应用系统应用开发工具应用开发工具数据库管理系统数据库管理系统操作系统操作系统DBS

8、组成图示组成图示用户用户用户用户用户用户应用系统应用系统应用开发工具应用开发工具数据库管理系统数据库管理系统数据库数据库数据库管理员数据库管理员DBMS硬件DS操统B M编译系统应 用软件工具开发应系用统作系DBA数据库系统的组成数据库系统的组成v数据库数据库(DB)(DB):有组织的相关数据的集合:有组织的相关数据的集合v数据库管理系统数据库管理系统(DBMSDBMS):):DBMSDBMS是数据库系是数据库系统的核心,其主要任务是管理数据库,为用户统的核心,其主要任务是管理数据库,为用户提供访问数据库的方法。提供访问数据库的方法。v应用系统应用系统:为满足用户需要而开发的数据库应:为满足用

9、户需要而开发的数据库应用软件用软件v应用开发工具应用开发工具:为开发数据库应用系统而采用:为开发数据库应用系统而采用的各种开发工具。的各种开发工具。 v人员人员:与数据库系统打交道的人。最终用户、:与数据库系统打交道的人。最终用户、应用程序开发人员、数据库管理员应用程序开发人员、数据库管理员5.2.2 数据库系统的三级模式结构数据库系统的三级模式结构v最终用户最终用户-外部视图外部视图-外模式外模式v应用系统开发人员应用系统开发人员-概念视图概念视图-模式模式v数据库管理员数据库管理员-内部视图内部视图-内模式内模式5.2.2 数据库系统的三级模式结构数据库系统的三级模式结构 模式又称为模式又

10、称为逻辑模式逻辑模式,是数据库中全体数据,是数据库中全体数据的全局逻辑结构和特征的描述。的全局逻辑结构和特征的描述。 外模式又被称为外模式又被称为用户模式用户模式,是根据用户的需要从模,是根据用户的需要从模 式中导出的子模式,式中导出的子模式,是用户最后看到的数据的局部逻辑是用户最后看到的数据的局部逻辑结构结构,是与某应用程序有关的整个数据库中部分数据的描述。,是与某应用程序有关的整个数据库中部分数据的描述。 外模式外模式 模式模式 内模式又称为内模式又称为存储模式存储模式,是数据物理结构和,是数据物理结构和存储方式的描述,是数据在存储介质上的保存方式。存储方式的描述,是数据在存储介质上的保存

11、方式。 内模式内模式 5.2.2 数据库系统的三级模式结构(续)数据库系统的三级模式结构(续) 模式模式/内模式映像内模式映像定义了模式和内模式之定义了模式和内模式之间的对应关系,是数据的全局逻辑结构和数据间的对应关系,是数据的全局逻辑结构和数据的存储结构之间的对应关系。的存储结构之间的对应关系。 模式模式/内模式映像内模式映像 外模式外模式/模式映像模式映像定义了外模式和模式之定义了外模式和模式之间的对应关系,是数据的全局逻辑结构和数据间的对应关系,是数据的全局逻辑结构和数据的局部逻辑结构之间的对应关系。的局部逻辑结构之间的对应关系。 外模式外模式/模式映像模式映像 模式模式/内模式映象内模

12、式映象内 模 式内 模 式数据库数据库模式模式外模式外模式/模式模式映象映象B外模式外模式/模式模式映象映象A数据库数据库管理系统管理系统外模式外模式A外模式外模式B应用程序应用程序1应用程序应用程序2应用程序应用程序3应用程序应用程序4应用程序应用程序5OS数据库系统三级模式结构数据库系统三级模式结构数据库管理系统(数据库管理系统(DBMSDBMS)的功能的功能F 数据库定义功能数据库定义功能F 数据操纵功能数据操纵功能F 数据库的建立和维护功能数据库的建立和维护功能F 数据库的运行管理功能数据库的运行管理功能F 数据通信功能数据通信功能F 数据字典数据字典常见的数据库管理系统常见的数据库管

13、理系统Microsoft AccessVisual FoxProOracleMicrosoft SQL Server U大型常用的数据库管理系统:大型常用的数据库管理系统:U Oracle 数据库管理系统数据库管理系统U Sybase 数据库管理系统(铁路系统)数据库管理系统(铁路系统)UDB2U Microsoft SQL Server 数据库管理系统数据库管理系统U小型常用的数据库管理系统:小型常用的数据库管理系统:U Microsoft Access 数据库管理系统数据库管理系统U Visual FoxPro 数据库管理系统数据库管理系统5.2.4 数据库系统的特点数据库系统的特点 数据

14、的数据的结构性强结构性强 1. 数据的共享性好,冗余度低数据的共享性好,冗余度低 2. 数据的独立性高数据的独立性高 3. 数据控制功能强数据控制功能强 4.5.3 数据模型数据模型 5.3.1 三个世界的概念三个世界的概念 5.3.2 概念模型概念模型 5.3.3 数据模型数据模型 本本节内节内容容 5.3.1 三个世界的概念三个世界的概念 人们管理的事物存在现实世界中,事物与事人们管理的事物存在现实世界中,事物与事物之间存在着联系。物之间存在着联系。 概念世界是现实世界中的事物在人们头脑中概念世界是现实世界中的事物在人们头脑中的反映,是对客观事物及其联系的抽象描述。的反映,是对客观事物及其

15、联系的抽象描述。 概念世界概念世界 现实世界现实世界 是在概念世界抽象描述的基础上,进一步抽是在概念世界抽象描述的基础上,进一步抽象为便于计算机处理的数据形式。象为便于计算机处理的数据形式。 数据世界数据世界(计算机世界计算机世界 ) 数据从现实世界到计算机数据库里的具体表现要经历3个阶段现现 实实 世世 界界概概 念念 世世 界界数据世界数据世界(DBMS支持的数据模型)支持的数据模型)对信息进行收集、分类和抽象对信息进行收集、分类和抽象对信息进行加工转换对信息进行加工转换(事物、事物性质)(事物、事物性质)(实体、实体属性)(实体、实体属性)(记录、数据项)(记录、数据项) 抽象化抽象化数

16、据化数据化概念模型描述概念模型描述 数据模型描述数据模型描述 5.3.2 概念模型概念模型 | 概念模型是人们对现实世界客观概念模型是人们对现实世界客观事物及其联系的一种抽象描述,事物及其联系的一种抽象描述,是人们对现实世界抽象出来的模是人们对现实世界抽象出来的模型型。| 概念模型是现实世界到计算机世概念模型是现实世界到计算机世界而构建的一个中间层次,界而构建的一个中间层次,是数是数据库设计的基础据库设计的基础。 实实 体体 :把客观存在并且可以相互区分把客观存在并且可以相互区分的事物称为实体,例如一名学生的事物称为实体,例如一名学生 。 属属 性性:描述实体的特性称为属性。描述实体的特性称为

17、属性。 实体集实体集:同一类型实体的集合称为实体同一类型实体的集合称为实体集。集。 实体型实体型:对同类实体的描述称为实体型。对同类实体的描述称为实体型。它由实体名与其属性名共同构成。它由实体名与其属性名共同构成。概念模型的基本概念和术语 关键字关键字:能够能够唯一标识唯一标识实体集中每个实体集中每个实体的某一属性或属性组称为关键字,实体的某一属性或属性组称为关键字,它的值能够唯一区分不同的实体。它的值能够唯一区分不同的实体。 联系:联系:在概念模型中将实体集之间的在概念模型中将实体集之间的对应关系对应关系称为联系。通过联系反映现称为联系。通过联系反映现实世界事物之间的相互关联。实世界事物之间

18、的相互关联。 概念模型的基本概念和术语部门部门医生医生护士护士1m组成组成n工作工作医生医生护士护士执行执行mnp一对多一对多 多对多多对多 一对一一对一 、一对多、一对多 、 多对多多对多两个实体集的联系有三种类型两个实体集的联系有三种类型:例如:例如:在足球世界杯比赛中,球队集在足球世界杯比赛中,球队集与场上队长集之间对于代表关系来说,与场上队长集之间对于代表关系来说,具有具有一对一一对一的联系;主教练集与队员的联系;主教练集与队员集之间对于指导关系来说,具有集之间对于指导关系来说,具有一对一对多多的联系;裁判集与队员集之的联系;裁判集与队员集之间对于间对于执法关系来说,具有执法关系来说,

19、具有多对多多对多的联系。的联系。 5.3.3 数据模型数据模型数据模型数据模型是计算机世界按数据库的是计算机世界按数据库的观点,对概念世界的数据抽象表示观点,对概念世界的数据抽象表示的工具。的工具。 在数据库系统中在数据库系统中DBMS支持的常见的支持的常见的数模型有三种数模型有三种:层次模型、网状模型和关系模型层次模型、网状模型和关系模型层次模型层次模型用树状结构表示实体与实体间联系的数据模型用树状结构表示实体与实体间联系的数据模型特点特点U仅有一个结点(根结点);仅有一个结点(根结点);U其他结点有且仅有一个父结点;其他结点有且仅有一个父结点;U记录之间的联系通过指针来实现,查询效率较高;

20、记录之间的联系通过指针来实现,查询效率较高;缺点缺点U由于层次顺序的严格和复杂,引起数据的查询和更由于层次顺序的严格和复杂,引起数据的查询和更新操作很复杂,因此应用程序的编写也比较复杂。新操作很复杂,因此应用程序的编写也比较复杂。层次模型举例层次模型举例: 学校的系所教课程的层次模学校的系所教课程的层次模型型系编号系编号 系名系名室编号室编号 室名室名课程号课程号 课程名课程名 学时数学时数姓名姓名 性别性别 职称职称 年龄年龄l其中系是根结点,树状结构反映的是实体型之间的结构,其中系是根结点,树状结构反映的是实体型之间的结构,该模型实际存储的数据通过链接指针体现的这种联系。该模型实际存储的数

21、据通过链接指针体现的这种联系。网状模型网状模型用网状结构表示实体与实体间联系的数据模型用网状结构表示实体与实体间联系的数据模型 特点特点 允许结点有多于一个的父结点;允许结点有多于一个的父结点; 可以有一个以上的结点没有父结点;可以有一个以上的结点没有父结点; 记录之间联系通过指针实现。记录之间联系通过指针实现。 缺点:缺点: 数据结构复杂和编程复杂数据结构复杂和编程复杂教教 师师课课 程程学学 生生教室教室例如:某学校教学管理的简单的网状模型例如:某学校教学管理的简单的网状模型 一名学生可以选修多门课程一名学生可以选修多门课程 一名教师可以开多门课程一名教师可以开多门课程 一门课程可以由多名

22、教师教一门课程可以由多名教师教 一门课程可以在多个教室上一门课程可以在多个教室上 一个教室可以上多门课程一个教室可以上多门课程关系模型关系模型v 用二维表来表示实体与实体之间联系用二维表来表示实体与实体之间联系的数据模型。的数据模型。v关系模型是将同一类实体的数据组织关系模型是将同一类实体的数据组织成二维表的形式。成二维表的形式。v每个二维表称为一个每个二维表称为一个关系关系。 学号学号姓名姓名性别性别年龄年龄专业专业20070001李红李红女女19计算机计算机20070002王晓平王晓平男男18自动化自动化20070005赵胜利赵胜利男男19计算机计算机20070003张灵张灵女女20化工化

23、工20070004杨中华杨中华女女18化工化工关系关系student(学生基本情况表)(学生基本情况表) v关关 系:系: 一个关系对应一张二维表。每个关系一个关系对应一张二维表。每个关系 必须有一个关系名。例如,关系名必须有一个关系名。例如,关系名student 。v属属 性:性:表中的一列为一个属性。每个属性都表中的一列为一个属性。每个属性都有一个名称,称为有一个名称,称为属性名属性名。v记记 录:录:表中的一行数据称为一条记录。也被表中的一行数据称为一条记录。也被称为元组。称为元组。v关键字:关键字:表中某一属性或属性组,它的值能表中某一属性或属性组,它的值能够够唯一标识唯一标识一条记录

24、,则把这一属性或属性一条记录,则把这一属性或属性组称为关键字。组称为关键字。关系模型的基本概念和术语关系模型的逻辑结构是一张二维表,由行和列组成。关系模型的逻辑结构是一张二维表,由行和列组成。关关系系学号学号姓名姓名性别性别系别系别年龄年龄籍贯籍贯95001950029500395004 95700李勇李勇刘成刘成王明王明张力张力杨晓东杨晓东男男女女女女男男男男计科计科信息信息数学数学计科计科物理物理2019181921江苏江苏山东山东北京北京北京北京 山西山西学学 生生 登登 记记 表表 关系名关系名关键字关键字属性(列)属性(列)属性名属性名元元组组(行)(行)v 值值 域:域:属性的取值

25、范围称为值域。属性的取值范围称为值域。v 关系模式:关系模式:是对关系的描述,它主要包括关是对关系的描述,它主要包括关系名,组成该关系的各属性名、值域和关键系名,组成该关系的各属性名、值域和关键字。字。v 关系模式的一般形式为:关系模式的一般形式为: 关系名关系名(属性名属性名1,属性名,属性名2,,属性名属性名n)关系模型的基本概念和术语关系模式的一般形式关系模式的一般形式示例示例1:关系关系student的关系模式是:的关系模式是: student(学号学号,姓名,性别,年龄,专业,姓名,性别,年龄,专业) 其中属性其中属性“学号学号”带有下划线,表示是关键字。带有下划线,表示是关键字。

26、示例示例2:关系关系success的关系模式是:的关系模式是: success(学号,课程编号学号,课程编号,成绩,成绩)其中属性其中属性“学号学号”和和“课程编号课程编号”带有下划线,表示带有下划线,表示关键字是由属性关键字是由属性“学号学号” 和和“课程编号课程编号”的组合。的组合。5.4 关系数据库及其应用关系数据库及其应用 5.4.1 关系数据库关系数据库 5.4.2 关系模型的三级模式结构关系模型的三级模式结构 5.4.3 关系模型的完整性规则关系模型的完整性规则本本节内节内容容 5.4.5 结构化查询语言结构化查询语言SQL 5.4.4 关系操作关系操作5.4.1 关系数据库关系数

27、据库v 采用关系模型作为数据的组织方式的采用关系模型作为数据的组织方式的数据库称为数据库称为关系数据库关系数据库。v 关系数据库是若干个关系的集合(由关系数据库是若干个关系的集合(由若干张相关的若干张相关的二维表二维表组成)组成)v 每个关系必须有一个每个关系必须有一个关键字关键字,由表中,由表中某一属性或属性组构成,它的值能够某一属性或属性组构成,它的值能够唯一确定一条记录。唯一确定一条记录。 S 在关系数据库中,两个关系的联系一般是在关系数据库中,两个关系的联系一般是通过通过相同的属性相同的属性建立的,其中,将一个关系建立的,其中,将一个关系称为称为主表主表,另一个关系称为,另一个关系称为

28、从表从表。S 主表中的关键字称为主表中的关键字称为主键主键;而从表中某个;而从表中某个属性或属性组不是该关系的关键字,但它是属性或属性组不是该关系的关键字,但它是主表的关键字,则把这个属性或属性组称为主表的关键字,则把这个属性或属性组称为外键外键。S 表与表之间的联系是通过主键和外键为纽表与表之间的联系是通过主键和外键为纽带建立的。带建立的。S在两个关系中,以外键作为主键的表称为在两个关系中,以外键作为主键的表称为主表主表,外键所在的表称为,外键所在的表称为从表从表。学号学号姓名姓名性别性别年龄年龄专业专业20070001李红李红女女19计算机计算机20070002王晓平王晓平男男18自动化自

29、动化20070005赵胜利赵胜利男男19计算机计算机20070003张灵张灵女女20化工化工20070004杨中华杨中华女女18化工化工关系关系student(学生基本情况表)(学生基本情况表) 从表从表主表主表外键外键主键主键关系模型的数据结构关系模型的数据结构学号学号姓名姓名性别性别年龄年龄系号系号原校原校9301011张力张力女女2201北京四中北京四中9303021林宏叶林宏叶男男2310上海中学上海中学9210081王朝王朝男男2410人大附中人大附中9201291陈婷婷陈婷婷女女2301北大附中北大附中9301161李一明李一明男男3001科大附中科大附中系号系号系名系名办公室办公

30、室主任主任电话电话01计算机计算机教教209张立张立30102物理物理教教501李记欣李记欣27603数学数学教教410王鸣利王鸣利34604化学化学教教306高明高明417 外语外语教教701陈刚陈刚628学学生生登登记记表表系系信信息息表表属性(列)和属性名元组(行)主键主键外键外键关系名关系名从表从表主表主表5.4.2 关系模型的三级模式结构关系模型的三级模式结构关系模型基本遵循数据库系统的三级模式结构关系模型基本遵循数据库系统的三级模式结构在关系模型中:在关系模型中: 模式是模式是关系模式关系模式的集合的集合 外模式是外模式是关系子模式关系子模式的集合的集合 内模式是内模式是存储模式存

31、储模式的集合。的集合。 5.4.2 关系模型的三级模式结构关系模型的三级模式结构关系模式是对关系的描述。关系模式是对关系的描述。三个关系的关系模式分别是:三个关系的关系模式分别是:student(学号学号,姓名姓名,性别性别,年龄年龄,专业专业)success(学号学号,课程编号课程编号,成绩成绩)course(课程编号课程编号,课程名称课程名称,学时学时,学分学分) 关系模式关系模式 5.4.2 关系模型的三级模式结构关系模型的三级模式结构 关系子模式(外模式)是用户所需要的关系子模式(外模式)是用户所需要的数据描述,其数据是从若干个关系模式中数据描述,其数据是从若干个关系模式中按给定的条件

32、选取出来的。按给定的条件选取出来的。 关系子模式关系子模式 例如例如:1.关系子模式关系子模式success1(姓名姓名,专业专业, 课程编号课程编号, 成绩成绩)2.关系子模式关系子模式success2(姓名姓名, 专业专业, 课程名称课程名称, 成绩成绩)5.4.2 关系模型的三级模式结构关系模型的三级模式结构( (内模式内模式) )是关系在物理存储设备上是关系在物理存储设备上 存储方式的描述,是数据库所采用存储方式的描述,是数据库所采用 的的物理模型物理模型。 关系存储时的基本组织方式是关系存储时的基本组织方式是记录记录存储模式存储模式 5.4.3 关系模型的完整性规则关系模型的完整性规

33、则实体完整性实体完整性是对关系中记录唯一性,即关键字的约束。是对关系中记录唯一性,即关键字的约束。 (关键字的值不能为空且不能有相同的值)(关键字的值不能为空且不能有相同的值)参照完整性参照完整性是对关系数据库建立联系的关系之间数据是对关系数据库建立联系的关系之间数据参照引用的约束,也就是对外键的约束。参照引用的约束,也就是对外键的约束。(从表中外键的值必须是主表主键的有效值或是空)(从表中外键的值必须是主表主键的有效值或是空) 用户定义的完整性用户定义的完整性是根据应用环境的不同,针对某一是根据应用环境的不同,针对某一具体数据的约束条件。具体数据的约束条件。 关系模型的完整性规则是对数据的约

34、束。关系模型的完整性规则是对数据的约束。 5.4.4 关系操作关系操作v在关系数据库中,对关系的操作在关系数据库中,对关系的操作主要是指对一张表或者两张表中主要是指对一张表或者两张表中相应行(记录)、列(属性)内相应行(记录)、列(属性)内容的操作。容的操作。v关系操作主要包括选择、投影和关系操作主要包括选择、投影和连接等三种。连接等三种。 选择操作选择操作是指在一个关系中选择出满足给是指在一个关系中选择出满足给定条件的记录定条件的记录( (也称为行或元组也称为行或元组) )组成新关系组成新关系1选择操作选择操作 例如:例如:在关系在关系student(学生基本情况表学生基本情况表)中找出女学

35、生中找出女学生的数据。给定的条件应该是性别为的数据。给定的条件应该是性别为“女女”。在操作时按照给定的条件对表中每一条记录在操作时按照给定的条件对表中每一条记录进行筛选,将选择出来的记录组成一个新关系进行筛选,将选择出来的记录组成一个新关系(结果)。(结果)。 投影操作投影操作是指在一个关系的所有属性中选取是指在一个关系的所有属性中选取 指定指定属性列属性列组成新关系。组成新关系。2投影操作投影操作 例如:例如:在关系在关系student(学生基本情况表)中找出所有(学生基本情况表)中找出所有学生的姓名、年龄和专业。学生的姓名、年龄和专业。操作时,在所有属性列中选取姓名、年龄和操作时,在所有属

36、性列中选取姓名、年龄和专业三个属性列组成新关系。专业三个属性列组成新关系。 3连接操作连接操作 | 连接操作连接操作一般是将两个关系通过连接一般是将两个关系通过连接条件组成一个条件组成一个新关系新关系。| 在新关系中包含原有两个关系的所有在新关系中包含原有两个关系的所有属性,其中属性,其中属性名表示方法属性名表示方法是属性名前是属性名前加上原有关系名。加上原有关系名。| 新关系中的记录新关系中的记录是通过连接原有关系是通过连接原有关系的记录得到的。的记录得到的。v 例题例题1:在两个关系在两个关系student和和success进行连接操作,进行连接操作,连接的条件是连接的条件是student

37、的学号等于的学号等于success学号学号例题例题2: 两个关系两个关系student和和success进行连接操作进行连接操作连接的条件是连接的条件是student的学号等于的学号等于 success的学号,的学号,要求连接后新关系中只包括女学生的姓名、要求连接后新关系中只包括女学生的姓名、 专业、课程编号和成绩。专业、课程编号和成绩。在这个例子中首先完成连接操作,在这个例子中首先完成连接操作, 然后再进行选择和投影操作。然后再进行选择和投影操作。 5.4.5 结构化查询语言结构化查询语言SQL(1) 基本表:是实际存储在数据库中的表(即关系)。基本表:是实际存储在数据库中的表(即关系)。(

38、2) 视图:是从已有的若干个关系导出的关系,它的视图:是从已有的若干个关系导出的关系,它的数据是基于基本表的数据,实际并不存在(虚表)。数据是基于基本表的数据,实际并不存在(虚表)。用户可以通过视图使用数据库中基本表的数据。用户可以通过视图使用数据库中基本表的数据。(3) 存储文件:是外存储器的一个物理文件。一个存存储文件:是外存储器的一个物理文件。一个存储文件可以存放一个或多个基本表。实际上,一个存储文件可以存放一个或多个基本表。实际上,一个存储文件对应一个数据库。储文件对应一个数据库。基本表是数据库的主要对象,大多数数据库由多个基基本表是数据库的主要对象,大多数数据库由多个基本表组成,而表

39、与表之间通过主键和外键建立联系。本表组成,而表与表之间通过主键和外键建立联系。 1SQL的基本结构的基本结构 5.4.5 结构化查询语言结构化查询语言SQL(1)数据定义功能数据定义功能:定义基本表、定义视图和定义:定义基本表、定义视图和定义索引。索引。(2) 数据操纵功能数据操纵功能:查询和更新。更新主要包括增:查询和更新。更新主要包括增加、删除和修改等操作。实现查询和更新的语句加、删除和修改等操作。实现查询和更新的语句有有SELECT、INSERT、DELETE和和UPDATE。(3) 数据控制功能数据控制功能:控制用户对数据的操作权限。:控制用户对数据的操作权限。 2SQL语言的主要功能

40、语言的主要功能 5.4.5 结构化查询语言结构化查询语言SQL(1) SELECT语句的基本格式语句的基本格式SELECT *allcolumn1, column2, FROM table1, table2, WHERE condition SELECT:关键字。:关键字。 *allcolumn1, column2, :目标列。其中:目标列。其中“”表示表示“或者或者” ;*和和all表示所有列;表示所有列;column1, column2, 表示指定列。表示指定列。 FROM 子句:查询的基本表名。(不能确省)子句:查询的基本表名。(不能确省) WHERE子句:查询的条件,其中子句:查询的条

41、件,其中condition表示查询表示查询表达式(可以确省)。常用比较运算符有:表达式(可以确省)。常用比较运算符有: 、=、=、3SQL的数据查询语句的数据查询语句 5.4.5 结构化查询语言结构化查询语言SQL(1) SELECT语句的基本格式语句的基本格式SELECT *allcolumn1, column2, FROM table1, table2, WHERE condition(2) SELECT语句的功能语句的功能 从从FROM 子句指明的基本表中,首先找出符合子句指明的基本表中,首先找出符合WHERE子句中查询条件的元组;再根据目标列子句中查询条件的元组;再根据目标列形成结果表

42、。如果确省形成结果表。如果确省WHERE子句,则查询出子句,则查询出所有的元组。所有的元组。 3SQL的数据查询语句的数据查询语句 例例5.1 查询出查询出student表中所有学生的信息。表中所有学生的信息。 SELECT * FROM student;例例5.2 查询出查询出student表中所有学生的姓名和年龄表中所有学生的姓名和年龄 SELECT 姓名,年龄姓名,年龄 FROM student;例例5.3 查询出查询出student表中女学生的信息。表中女学生的信息。 SELECT * FROM student WHERE 性别性别=女;女;例例5.4 查询出查询出student表中年

43、龄为表中年龄为19岁的学生岁的学生学号、姓名和专业。学号、姓名和专业。 SELECT 学号,姓名,专业学号,姓名,专业 FROM student WHERE年龄年龄=19;3SQL的数据查询语句的数据查询语句 例例5.5 查询出查询出success表中成绩大于(含等于)表中成绩大于(含等于)90分的学生信息。分的学生信息。SELECT * FROM success WHERE 成绩成绩=90;例例5.6 查询出所有学生的学号、姓名、课程编号查询出所有学生的学号、姓名、课程编号和成绩。和成绩。 SELECT student.学号,学号,student.姓名,姓名, success.课程编号,课程

44、编号,success.成绩成绩 FROM student,success WHERE student.学号学号 = success.学号;学号;例例5.7 查询出所有学生的学号、姓名、查询出所有学生的学号、姓名、课程名称和成绩。课程名称和成绩。 SELECT student.学号,学号,student.姓名,姓名, course.课程名称,课程名称,success.成绩成绩 FROM student,success,course WHERE student.学号学号 = success.学号,学号, success.课程编号课程编号= course.课程编号;课程编号; 55 关系数据库设计关

45、系数据库设计 5.5.1 数据库设计步骤数据库设计步骤 5.5.2 数据库设计案例数据库设计案例本本节内节内容容5.5.1 数据库设计步骤数据库设计步骤1用户需求分析用户需求分析在设计数据库之前要对用户的需求进行调研,确定在设计数据库之前要对用户的需求进行调研,确定应用系统的功能,收集现实中需要处理的数据。应用系统的功能,收集现实中需要处理的数据。2概念模型设计概念模型设计概念模型设计是确定有哪些实体、每个实体由哪些概念模型设计是确定有哪些实体、每个实体由哪些属性以及实体集之间的联系类型等。将设计的概念属性以及实体集之间的联系类型等。将设计的概念模型用模型用E-R图描述出来。图描述出来。35.

46、5.1 数据库设计步骤数据库设计步骤3逻辑模型设计:将概念模型表示为计算机中逻辑模型设计:将概念模型表示为计算机中DBMS支持的数据模型。在关系数据库设计中,将支持的数据模型。在关系数据库设计中,将E-R图表示为关系模型(关系模式以及关系表)。图表示为关系模型(关系模式以及关系表)。 在关系数据库设计中,对关系模式以及关系表要在关系数据库设计中,对关系模式以及关系表要适当调整关系的结构,尽量减少关系中的数据冗余,适当调整关系的结构,尽量减少关系中的数据冗余,方便操作和管理。方便操作和管理。4物理模型设计:将逻辑模型转换为计算机存储设物理模型设计:将逻辑模型转换为计算机存储设备的存储结构(将关系

47、名转换为文件名,将属性备的存储结构(将关系名转换为文件名,将属性名转换为字段名,确定字段的数据类型、长度和有名转换为字段名,确定字段的数据类型、长度和有效性规则等)。效性规则等)。 35.5.2 数据库设计案例数据库设计案例5.1节实例中节实例中“学生考试成绩管理系统学生考试成绩管理系统”关系数据库关系数据库设计的大致过程。设计的大致过程。1用户需求分析用户需求分析 通过与用户的交流和用户需求的分析,确定学生通过与用户的交流和用户需求的分析,确定学生成绩管理系统应该具备的基本功能:成绩管理系统应该具备的基本功能: (1) 录入和维护学生的各门课程的成绩。录入和维护学生的各门课程的成绩。 (2) 方便查询和浏览学生的成绩。方便查询和浏览学生的成绩。 (3) 对成绩进行统计。对成绩进行统计。 (4) 能够打印输出各种表格。能够打印输出各种表格。35.5.2 数据库设计案例数据库设计案例2. 概念模型设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论