《教程之数据库系统导论.ppt》由会员分享,可在线阅读,更多相关《教程之数据库系统导论.ppt(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第一章第一章 数据库系统导论数据库系统导论教学要求:教学要求:1、了解数据与信息的概念。2、掌握计算机数据管理的主要发展阶段。3、掌握数据库系统的组成和主要功能。4、掌握数据库保护的基本概念。5、了解数据模型的概念。重点:重点:1、计算机数据管理的主要发展阶段。2、数据库系统的组成和主要功能。3、数据库保护的基本概念。难点:难点:数据模型一、计算机数据管理的发展一、计算机数据管理的发展1、计算机数据管理的发展(、计算机数据管理的发展(4个阶段)个阶段)人工管理阶段文件系统阶段数据库系统阶段分布式数据库系统阶段2、数据库系统的特点(、数据库系统的特点(4个特点)个特点)(1)、实现数据共享,减少
2、数据冗余(2)、采用特定的数据模型(3)、具有较高的数据独立性(4)、有统一的数据控制功能二、数据库系统二、数据库系统1、数据库系统的组成、数据库系统的组成 这类系统由五部分组成:硬件系统、数据库集合、数据库管理硬件系统、数据库集合、数据库管理系统及相关软件、数据库管理员和用户系统及相关软件、数据库管理员和用户。2、DBMS的主要功能的主要功能(1)、数据库系统的三级结构和两极独立性)、数据库系统的三级结构和两极独立性数据的局部逻辑结构 逻辑独立性数据的整体逻辑结构 物理独立性数据的物理存储结构(2)、)、DBMS的主要功能的主要功能 、数据库的定义功能数据库的定义功能 、数据操纵功能、数据操
3、纵功能 、数据库运行控制功能、数据库运行控制功能 数据的完整性控制 数据库的并发操作控制 数据的安全性控制 数据库的恢复 、数据字典、数据字典三、数据库的保护三、数据库的保护 数据库的保护包括以下几方面:数据的完整性控制、并发控制、数据的安全性控制、数据恢复。1、数据的完整性控制、数据的完整性控制 (1)、域完整性控制 (2)、关联完整性控制2、并发控制、并发控制 (1)、独占与共享 (2)、加锁与解锁 (3)、死锁3、数据的安全性控制、数据的安全性控制 (1)、用户标识和鉴定)、用户标识和鉴定 (2)、访问授权)、访问授权 (3)、数据加密)、数据加密 (4)、环境安全)、环境安全第二章第二
4、章 关系数据模型关系数据模型教学要求:教学要求:(1)、掌握二维表的定义、关系术语的定义和关系模型的特点;(2)、熟练掌握各种关系运算。重点:重点:同上难点:难点:关系运算一、关系模型一、关系模型 1、二维表、二维表 要将关系与二维表联系起来理解:要将关系与二维表联系起来理解:一个关系的逻辑结构就是一张二维表。关系在磁盘上以文件形式存储,每个字段是表中的一列,每个记录是表中的一行。关系数据模型:关系数据模型:用二维表的形式来表示实体与实体间联系的数据模型称为关系数据模型。2 2、关系术语、关系术语 要掌握以下关系术语:关系、元组、关关系、元组、关系的属性、域、关系中的关键字、关系模式、系的属性
5、、域、关系中的关键字、关系模式、元数。元数。3、关系模型的特点、关系模型的特点(1)关系必须规范化(2)模型概念单一 (3)集合操作二、关系运算二、关系运算 关系的基本运算有两类:一类是传统的集合运算(并、交、差等),另一类是专门的关系运算(选择、投影、联接等)。1、传统的集合运算传统的集合运算 前提条件:参加运算的两个关系R和S具有相同的结构。并()的结果:两者的元组都包含在内。差()的结果:属于被除数而不属于除数的元组组成。交()的结果:两者的共同元组组成。2、选择运算、选择运算 概念:从关系中找出满足给定条件的那些元组称为选择。实质:是从行 的角度进行的运算,即水平方向抽取元组。注意:F
6、oxPro命令中的任选短语FOR 、WHILE 等均相当于选择运算。举例:例5、例6。3、投影运算、投影运算 概念:从关系模式中挑选若干属性组成新的关系称为投影。实质:是从列的角度进行的运算,相当于对关系进行垂直分解。注意:FoxPro命令中,可选短语FIELDS 相当于投影运算。举例:例7、例8。4、联接运算(二目运算)、联接运算(二目运算)(1)、联接)、联接 概念:联接是将两个关系模式通过公共的属性名拼接成一个更宽的关系模式,生成的新关系中包含满足联接条件的元组。实质:联接是对关系的结合。注意:联接条件中将出现两个关系中的公共属性名。在中有单独一条命令实现两个关系的联接运算。举例:例9、
7、例10、例11(2)、自然联接)、自然联接 概念:自然联接是去掉重复属性的连接。是最常用的联接运算,在关系运算中起着重要作用。自然联接例子:例9、例 10、例11、例13。非自然联接例子:例125、外关键字、外关键字 概念:如果一个关系中的属性或属性组并非该关系的关键字,但它们是另一个关系的关键字,则称其为该关系的外关键字。意义:有了外关键字,才能实现关系之间的意义:有了外关键字,才能实现关系之间的动态联接。动态联接。第三章第三章 结构化查询语言结构化查询语言SQL教学要求:熟练掌握简单查询和联接查询。重点:同上。难点:同上。SQL 查 询查询语句的基本形式查询语句的基本形式:SELECTFR
8、OMWHERESQL基本查询模块的结构:基本查询模块的结构:SELECT ,,FROM ,WHERE;说明:说明:(1)、)、select子句指定查询目标,子句指定查询目标,from子句子句指出所涉及的关系,指出所涉及的关系,where子句指出查询目子句指出查询目标必须满足的条件。标必须满足的条件。(2)、在条件中可以出现逻辑运算符、谓)、在条件中可以出现逻辑运算符、谓词和集合运算符。词和集合运算符。(3)、书中的)、书中的SQL查询格式使用查询格式使用FoxPro中中的格式。的格式。一、简单查询 在简单查询中只涉及到一个关系。在在简单查询中只涉及到一个关系。在FoxPro中,无论数据库(即我
9、们所讲的关中,无论数据库(即我们所讲的关系)事先是否打开,系)事先是否打开,FROM指出的数据库指出的数据库系统将自动打开。系统将自动打开。举例:例举例:例5、例、例6。二、联接查询二、联接查询 在联接查询中查询目标涉及到两个在联接查询中查询目标涉及到两个或多个关系。或多个关系。举例:例举例:例15、例、例16、例、例17。三、查询命令子句介绍三、查询命令子句介绍1、SELECT子句子句DISTINCT和和ALL 若选择若选择ALL,则允许在查询结果中出现内容重复则允许在查询结果中出现内容重复的行(记录),若选择的行(记录),若选择DISTINCT,则在查询结果中则在查询结果中不允许出现内容重
10、复的行,若省略该选项,则隐含为不允许出现内容重复的行,若省略该选项,则隐含为ALL。用用AS指定查询结果的自定义列名指定查询结果的自定义列名 可以用可以用AS选项给列或字段指定一个新的显示列名。选项给列或字段指定一个新的显示列名。字段函数字段函数COUNT(/*)统计出对应字段的值的个数,它统计出对应字段的值的个数,它也就是相应的记录数,通常使用也就是相应的记录数,通常使用“*”来表示任一字段。来表示任一字段。MAX()求出对应的数值、字符或日期字求出对应的数值、字符或日期字段的最大值。段的最大值。MIN()求出对应的数值、字符或日期字求出对应的数值、字符或日期字段的最小值。段的最小值。AVG
11、()求出对应的数值字段的平均值。求出对应的数值字段的平均值。SUM()求出对应的数值字段的总和。求出对应的数值字段的总和。2、FROM子句子句 该子句提供用于查询的基本表,并可以为每个基该子句提供用于查询的基本表,并可以为每个基本表起一个临时别名,此别名只限于所在的本表起一个临时别名,此别名只限于所在的SQL SELECT命令中使用,作为字段名的前缀限定符,以命令中使用,作为字段名的前缀限定符,以区别于其它源表中的同名字段。区别于其它源表中的同名字段。3、WHERE 子句子句第十章 FoxPro应用程序教学目的教学目的:通过本章的学习,同学们要掌握编写应用程序的基本思路和方法。难点、重点难点、
12、重点:所提供的选择结构和循环结构各种命令的格式和功能。过程的建立、调用与使用的方法。与前面章节的关系与前面章节的关系:将前面章节中所学的命令和函数与本章所学的程序控制语句组成一个有序的集合,并以文件的形式存入磁盘,这就是FoxPro应用程序。一、应用程序的结构一、应用程序的结构 不管应用程序含有多少条语句,按功能一般可以把它分成三部分:第一部分:进行程序的初始化,包括清屏、设置系统状态等;为程序运行提供必要的数据,包括打开一个数据库、给内存变量赋值等,为后面的操作做好必要的准备。第二部分:程序的主体。按照程序设计的要求对提供的数据进行运算处理。在此关键是正确地理解选择结构和循环结构语句的功能;
13、正确地选择和确定选择条件或循环条件以及编写正确的选择程序或循环程序。第三部分:运算处理结果的输出。二、结构化程序设计的基本结构及特点AAB出口入口PABA1A2AnKPA程序中不存在“死循环”。程序中的每一部分都有机会被执行到;只有一个出口;只有一个入口;特点循环结构选择结构顺序结构基本结构AP三、选择结构程序设计 FoxPro提供了三条选择程序控制语句:IF-ENDIF,IF-ELSE-ENDIF和DOCASE-ENDCASE。例5IF条件表达式语句行序列1ELSE语句行序列2ENDIF 例6、例7DO CASE CASE 条件表达式1 语句序列1 CASE 条件表达式n 语句序列nENDC
14、ASE例4例题流程图IF 条件表达式语句行序列ENDIF语句格式PAPABKA1A2An语句格式流程图例题DO WHILE LOOP EXIT ENDDO 例9、例10、例11、例12四、循环结构程序设计 FoxPro 提供的循环语句有三条:DO WHILE-ENDDO、FOR-NEXT和 SCAN-ENDSCAN。1 1、条件循环语句、条件循环语句DO WHILE-ENDDODO WHILE-ENDDOpLOOPEXIT循环体ENDDO后面的语句语句格式流程图例题FOR =;TO STEP LOOP EXIT ENDFOR例13、循环语句、循环语句FOR-NEXT/ENDFORFOR-NEX
15、T/ENDFOR循环变量初值循环变量?终值循环体LOOPEXIT循环变量循环变量步长语句格式流程图例题SCAN;FOR/WHILE LOOP EXIT ENDSCAN例143、扫描循环语句、扫描循环语句SCAN-ENDSCAN记录指针+1初设记录指针在范围内?满足FOR条件?ENDSCAN循环体LOOPEXIT五、过程文件的建立与调用五、过程文件的建立与调用基本概念:基本概念:(1)结构化程序设计方法:在一个较大软件的设计过程中,可以根据软件系统的主要功能将其划分成几个相对独立的模块,每个模块又可分成若干个相对独立的子程序(过程),并确定子程序与主程序的关系,分别编制各个子程序、过程和函数,再将其汇总成一个完整的软件系统进行修改和调试,这种方法便是结构化程序设计方法。(2)过程文件:过程文件是一种包含有任意个过程的命令文件。(3)内部过程、外部过程:过程文件中的过程被称作内部过程,独立存放在磁盘上的过程文件被称作外部过程。过程文件的一般形式:过程文件的一般形式:PROCEDURE RETURN PROCEDURE RETURN :PROCEDURE RETURN
限制150内