第7章程序设计基础和数据库技术基础

上传人:cn****1 文档编号:591987379 上传时间:2024-09-19 格式:PPT 页数:68 大小:1.57MB
返回 下载 相关 举报
第7章程序设计基础和数据库技术基础_第1页
第1页 / 共68页
第7章程序设计基础和数据库技术基础_第2页
第2页 / 共68页
第7章程序设计基础和数据库技术基础_第3页
第3页 / 共68页
第7章程序设计基础和数据库技术基础_第4页
第4页 / 共68页
第7章程序设计基础和数据库技术基础_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《第7章程序设计基础和数据库技术基础》由会员分享,可在线阅读,更多相关《第7章程序设计基础和数据库技术基础(68页珍藏版)》请在金锄头文库上搜索。

1、JXNUCIEJXNUCIE第第7章章 程序设计基础和数据库技术基础程序设计基础和数据库技术基础 程程序序是是人人们们为为了了处处理理某某个个事事务务而而编编制制的的某某种种计计算算机机语语言言命命令令序序列列集集合合。产产生生程程序序的的过过程程,被被称称为为程程序序设设计计。数数据据库库技技术术是是研研究究数数据据库库的的结结构构、存存储储、设设计计、管管理理和和使使用用的的一一门门软软件件学学科科 。 9/19/2024大学计算机基础大学计算机基础JXNUCIJXNUCIE E本章主要内容本章主要内容7.1程序设计基础程序设计基础7.2数据库技术基础数据库技术基础 2JXNUCIJXNU

2、CIE E7.1 程序设计基础程序设计基础7.1.1 程序与程序设计的概念7.1.2 常用程序设计语言7.1.3 程序的三种基本控制结构7.1.4 程序设计的基本步骤7.1.5 结构化程序设计方法7.1.6 面向对象程序设计方法概述3JXNUCIJXNUCIE E7.1.1 程序与程序设计的概念程序与程序设计的概念计算机实际上是一台高速执行指令序列的机器。每一条指令完成一个基本的操作,比如输入/输出、算术运算等。虽然每一条指令都非常简单,但是将这些指令组合起来却能完成非常复杂的工作。要让计算机按人们的意图完成某一项工作,只需事先按照完成这项工作的步骤,将这些指令排成一个有序的序列,然后交给计算

3、机执行。4JXNUCIJXNUCIE E7.1.1 程序与程序设计的概念程序与程序设计的概念(续续)程序 为完成某一项工作而编排的有序的指令集合,就称为程序 。或者说程序是人们为了处理某个事务而编制的某种计算机语言命令序列集合。 对于机器语言来说,这些命令被称为指令,而对于高级语言而言,这些命令被称为语句。程序设计 产生程序的过程,被称为程序设计。 程序设计所包括的工作不仅仅是编写程序代码,它还包括算法设计与描述、数据结构分析与定义、程序的调试与测试,以及结果分析等工作。 5JXNUCIJXNUCIE E7.1.2 常用程序设计语言常用程序设计语言1.过程式程序设计语言 过程式程序设计语言用一

4、系列语句描述解决问题的方法和步骤,用这类语言编程时,不仅要告诉计算机做什么,而且还要告诉计算机怎样做。 常用的过程语言BASIC:一种易学易用的高级程序设计语言,初学者学习程序设计。FORTRAN:主要用于科学计算和工程应用 。COBOL:主要应用于情报检索、商业数据处理等管理领域。 PASCAL:一种结构化程序设计语言,普遍用于教学。C:兼顾了高级语言和汇编语言的特点,广泛应用于专业程序设计。 6JXNUCIJXNUCIE E7.1.2 常用程序设计语言常用程序设计语言(续续)2.面向对象程序设计语言 程序包含定义的各种对象、类,并规定它们之间传递消息的规律。 面向对象程序设计语言通过对象来

5、描述程序中的实体,程序设计的主要精力放在设计对象的属性和事件过程上。程序运行时,等待用户操作,当发生某一事件时,执行相应的事件处理程序。 面向对象程序设计语言适用于编写Windows应用程序。常用的面向对象程序设计语言Smalltalk:世界上第一个真正面向对象程序设计语言。Visual Basic:可视化面向对象编程语言。 C+:由C语言发展而来,一种混合型面向对象程序设计语言。Java语言:适合网络应用的面向对象程序设计语言。 7JXNUCIJXNUCIE E7.1.2 常用程序设计语言常用程序设计语言(续续)3.说明性语言 说明性语言也有人把它称为非过程性语言,提供了功能强大的非过程化问

6、题定义手段。 编程者只需具体说明问题的规则并定义一些条件即可。 说明性语言只需告诉计算机做什么,而不需要告诉计算机怎样做。 常用的说明性语言Prolog:接近于自然语言,被应用于人工智能与专家系统领域。SQL:标准的数据库语言,是面向集合的描述性非过程化语言。8JXNUCIJXNUCIE E7.1.2 常用程序设计语言常用程序设计语言(续续)4.Web开发语言Web开发语言是随着WWW的出现而诞生的,它将图形用户界面带到了Internet网,而在此之前Internet网只采用文本形式。超文本标记语言HTML是第一个用来制作Web网页的程序设计语言,利用FrontPage、Dreamweaver

7、等软件制作网页更加方便快捷,它同样产生HTML程序。目前互联网开发中最常用的编写Web应用程序的有VBScript、JavaScript和Perl等简单易懂的语言。9JXNUCIJXNUCIE E7.1.3 程序的三种基本控制结构程序的三种基本控制结构一个程序包括两方面的内容:对数据的描述及对操作的描述。前者指在程序中要指定使用的数据,以及这些数据的类型和数据的组织形式,即数据结构;后者是指程序中的操作步骤,即算法。瑞士计算机科学家尼克劳斯沃尔斯(Niklaus Wirth)曾提出一个著名的公式:程序程序程序程序 = = 算法算法算法算法 + + 数据结构数据结构数据结构数据结构算法是解决“做

8、什么”和“怎么做”的问题,是程序的灵魂。1996年,计算机科学家Bohm和Jacopini证明了这样的事实:任何简单或复杂的算法都可以由顺序结构、选择结构和循环结构这三种基本结构组合而成。10JXNUCIJXNUCIE E7.1.3 程序的三种基本控制结构程序的三种基本控制结构(续续)1.顺序结构 在执行完A框所指定的操作后,必然接着执行B框所指定的操作。顺序结构是最简单的一种基本结构。 2.选择结构 此结构中必定包含一个判断框,根据给定的条件P是否成立而选择执行A框或B框,无论走哪一条路径,在执行完A或B之后,都经过b点,然后脱离本选择结构。 3.循环结构 反复执行某一部分的操作。循环结构又

9、可以分成当型循环结构和直到循环结构。11JXNUCIJXNUCIE E7.1.3 程序的三种基本控制结构程序的三种基本控制结构(续续)三种基本结构流程图表示 以上三个种基本控件结构,有以下几个共同特点:只有一个入口。只有一个出口。结构内的每一部分都有机会被执行到。12JXNUCIJXNUCIE E7.1.3 程序的三种基本控制结构程序的三种基本控制结构(续续)表示三种基本控件结构方式除了上面介绍的流程图法以外,常用的还有N-S图法和PAD图法。N-S图法PAD图法13JXNUCIJXNUCIE E7.1.4 程序设计的基本步骤程序设计的基本步骤编写计算机程序解决实际问题,通常需要经过下以几个基

10、本过程:需求分析算法与数据结构设计编写程序代码调试程序与测试程序编写程序文档14JXNUCIJXNUCIE E7.1.4 程序设计的基本步骤程序设计的基本步骤(续续)1.需求分析 对现实问题进行分析,明确解决问题的目标,略去一些次要方面,找出解决问题的规律,并将这些规律用一具体的概念模型加以描述。 根据建立的模型,准确地描述出需要输入哪些数据,需要输出哪些数据,输出数据格式上有什么要求,数据具体的处理过程,要实现那些功能等等,形成需求说明书。需求说明书将成为程序设计的基础和依据。 15JXNUCIJXNUCIE E7.1.4 程序设计的基本步骤程序设计的基本步骤(续续)2.算法与数据结构设计

11、(1)算法算法的定义:对问题求解方法的形式化描述称为算法。 算法的规则: 有穷性。算法所包含的计算步骤是有限的。确定性。算法中所要执行的操作有严格的规定,没有歧义。输入。算法有零个或多个输入,即算法开始执行之前,要设置好初始值。输出。算法有一个或多个输出,即算法执行后,有最终输出结果。可行性。算法要执行的运算和操作都是最基本的,它们能够精确地进行。算法的描述:自然语言、流程图、N-S图、PAD图、IPO图、伪代码、程序设计语言等。16JXNUCIJXNUCIE E7.1.4 程序设计的基本步骤程序设计的基本步骤(续续)(2)数据结构 用来反映一个数据的内部构成,即一个数据由那些成分组成,以什么

12、方式相关联,呈什么样的结构。 是数据存在的形式,所有的数据都是按照数据结构进行分类的。简单数据类型对应于简单的数据结构,如高级语言中的整数型、实数型、字符型和布尔型等基本的数据类型;构造数据类型对应于复杂数据结构,如数组、记录、链表、栈、队列、树和图等结构。 由此可见,算法和数据结构是计算机程序的两个重要的组成部分。算法是程序的核心,而数据结构是对所要加工数据的抽象和组织,将各种松散的数据按程序处理要求组成合适数据结构,可使程序有效地处理数据。 17JXNUCIJXNUCIE E7.1.4 程序设计的基本步骤程序设计的基本步骤(续续)3.编写程序代码依据算法的描述,用选定的程序设计语言来编写程

13、序。编写程序时,必须严格遵循所选择的程序设计语言的语法规范。 例如,求100以内自然数的和,用C语言编写的程序代码为:#includemain() int i,sum; sum=0; for(i=1;i=100;i+) sum=sum+i; printf(“sum=%dn”,sum); 18JXNUCIJXNUCIE E7.1.4 程序设计的基本步骤程序设计的基本步骤(续续)4.调试程序与测试程序 调试程序 是将编制的程序投入实际运行前,用手工或编译程序等方法,修正语法错误和逻辑错误的过程。这是保证程序正确性必不可少的步骤。 测试程序 测试是以程序通过编译,在没有语法和连接错误的基础上进行的。

14、 目前常用的测试方法有黑盒法和白盒法。 黑盒法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,只测试程序是否满足需求分析中的功能说明,是否会发生异常情况。白盒法是把被测试的程序看成是一个透明的箱子,对系统内部过程性细节做细致的检查。它是以程序内部的逻辑结构及相关信息来设计或选择测试用例,使测试数据覆盖被测试程序的所有逻辑路径。19JXNUCIJXNUCIE E7.1.4 程序设计的基本步骤程序设计的基本步骤(续续)5.编写程序文档写出程序使用说明书和写出程序技术说明书。20JXNUCIJXNUCIE E7.1.5 结构化程序设计方法结构化程序设计方法结构化程序设计采用了模块分解与功能

15、抽象和自顶向下、分而治之的方法,从而有效地将一个较复杂的程序系统设计任务,分解成许多易于控制和处理的子程序,便于开发和维护。结构化程序设计方法包括:自自顶顶向向下下,逐逐步步求求精精的设计方法;分而治之分而治之的分解技术;模块化模块化的组织形式。PP1P2P3P11P12P21P22P23P31P3221JXNUCIJXNUCIE E7.1.6 面向对象程序设计方法概述面向对象程序设计方法概述1.面向对象程序设计思想及方法 (1)面向对象程序设计的基本思想 是尽可能按人类的思维方式,从现实世界出发去考虑软件开发。 (2)面向对象程序设计方法 是以数据为中心,将数据和处理相结合的一种方法。 22

16、JXNUCIJXNUCIE E7.1.6 面向对象程序设计方法概述面向对象程序设计方法概述(续续)2.面向对象程序设计的基本概念 (1)类与对象 对象现实世界中每一个实体都是一个对象 。对象由数据(描述事物的属性)和作用于数据的操作(体现事物的行为)构成一独立整体。从程序设计者的角度来看,对象是一个程序模块 。类 是指同种对象的集合与抽象 。23JXNUCIJXNUCIE E7.1.6 面向对象程序设计方法概述面向对象程序设计方法概述(续续)(2)属性与方法 属性 是用来描述和反映对象特性的参数。 方法 对象的行为 。行为即为在对象上实施的操作 。24JXNUCIJXNUCIE E7.1.6

17、面向对象程序设计方法概述面向对象程序设计方法概述(续续)(3)消息与事件驱动 消息 是对象之间进行通信的一种规格说明。 一般它由三部分组成:接收消息的对象、消息名及实际变元。 事件驱动 在面向对象的程序设计中,程序是由若干个规模较小的事件过程组成的。程序执行后,系统等待某个事件的发生,事件一旦触发,则程序转去执行和处理该事件的事件过程,待事件过程执行完毕后,系统又处于等待状态,这就是事件驱动的含义。 用户对这些事件驱动的顺序决定了程序代码执行的顺序,因此,应用程序每次运行时所经过的代码可能都不同。 25JXNUCIJXNUCIE E7.1.6 面向对象程序设计方法概述面向对象程序设计方法概述(

18、续续)3.面向对象程序设计特性 (1)封装性封装性是指数据与其有关的操作放在一起,形成一个实体即对象,用户不必知道对象行为的实现细节,只需根据对象提供的外部特性接口访问对象。 (2)继承性继承性是子类自动共享父类之间数据和方法的机制。它由类的派生功能体现。一个类直接继承其他类的全部描述,同时可修改和扩充。(3)多态性多态性是指对象根据所接收的消息而做出动作。同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。 26JXNUCIJXNUCIE E7.2 数据库技术基础数据库技术基础7.2.1 数据库系统概述7.2.2 数据库的建立和维护7.2.3 数据库查询7.2.4 窗体和报表

19、27JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述数据库技术是研究数据库的结构、存储、设计、管理和使用的一门软件学科 ,是计算机科学技术中发展最快的领域之一,也是应用最为广泛的技术之一。 数据库技术已经成为现代信息技术的重要组成部分,是现代计算机信息系统的基础和核心。 28JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)1.数据管理技术的三个发展阶段人工管理阶段20世纪50年代中期以前,外部存储器只有磁带、卡片和纸带等,软件只有汇编语言,没有数据管理方面的软件,计算机主要用于科学计算。 在这个阶段,程序员将程序和数据编写在一起,每个程序都有

20、属于自己的一组数据,程序之间数据不能共享,数据冗余度很大,数据不保存。 29JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)文件系统管理阶段 到了20世纪60年代中期,有了磁带、磁盘等大容量存储设备,有了操作系统。 数据以文件的形式存储在外存储设备中,由操作系统统一管理,操作系统为用户提供了按名存取文件的存取方式,为用户带来了方便。 在这个阶段,文件的逻辑结构与物理结构分离,程序与数据分离,程序与数据之间有了一定的独立性。 用户的应用程序与数据文件可分别存放在外存储器中,不同应用程序之间可以共享部分数据,但数据共享性和独立性仍然比较差。 30JXNUCIJXNUC

21、IE E7.2.1 数据库系统概述数据库系统概述(续续)数据库系统阶段 到了20世纪60年代后期,数据处理的规模逐渐增加,出现了大容量廉价的磁盘,操作系统已日渐成熟,这些都为数据库技术的发展创造了条件,数据库技术就是在这种背景下产生的,数据库技术的产生就是为了解决数据的独立性问题、数据共享问题以及数据统一管理问题。31JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)数据管理技术进入数据库阶段的重要标志是20世纪60年代末发生的三件大事三件大事,即IMS系统系统、DBTG报告报告和E.F.Codd的文章的文章。1968年美国的IBM公司成功地研制出了IMS(Info

22、rmation Management System)系统,于1969年9月投入市场。IMS系统是一个典型的层次模型数据库系统。1967年美国数据系统语言协会组织成立了一个DBTG(Data Base Task Group)小组,该小组专门研究数据库语言。1969年DBTG小组提出了一份报告,即著名的“DBTG报告”,并于1971年4月正式通 过了这份报告。DBTG报告对数据库和数据操作的环境建立了规范。 第一次出现关系模型的概念是E.F.Codd 在1970年美国计算机学会通信杂志(CACM)发表的一篇题为“A Relation Model of Data for Large Shared D

23、ata Banks”论文中提到的。关系数据库的许多概念都是这篇论文思想的继承和发展。这篇论文奠定了关系数据库的理论基础。32JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)2.常用术语数据库即Database,简称DB。 是长期存储在计算机内、有结构的、统一管理的相关数据的集合。 DB能为各种用户共享,并具有较小冗余度、数据间联系紧密及较高的数据独立性等特点。 数据库管理系统 即Database Management System,简称DBMS 。是位于用户与操作系统(OS)之间的数据管理软件,它为用户或应用程序提供访问DB的方法 。是数据库系统的核心组成部分,对

24、数据库的一切操作,如查询、插入、更新、删除以及各种控制,都是通过DBMS实现的。33JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)数据库系统 即Database System,简称DBS 。是采用数据库技术的计算机系统。 DBS是一个实际可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统 。它包括操作系统、数据库、数据库管理系统、各种主语言、应用开发支撑软件、数据库管理员、用户及计算机硬件等 。p数据库管理系统是数据库系统的核心软件数据库管理系统是数据库系统的核心软件。34JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续

25、)3.数据模型 所谓数据模型,是指对客观世界中复杂对象及其联系的抽象描述。在数据库技术中,将现实世界中的客观事物最终转换成计算机能够表示、存储并处理的数据经历了两次抽象:第一次抽象是将现实世界的事物抽象成信息世界的实体,往往用ER模型(Entity Relationship)即实体联系模型表示。第二次抽象是将实体描述转换成数据世界的记录,往往用逻辑数据模型表示。35JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)ER模型 也称为“概念数据模型”。它独立于计算机系统,用来描述某个特定组织所关心的信息结构,是用户与数据设计人员之间进行交流的工具,是直接从现实世界中抽象

26、出实体类型及实体间联系,然后用实体联系ER图表示数据模型。矩形框:表示实体类型。菱形框:表示联系类型。椭圆形框:表示实体类型或联系类型的属性。 连线:实体与属性之间,联系与属性之间的,实体与联系之间线段,用来表示它们之间的联系。36JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)【例】按要求画出ER模型图。假设规定一个学生可以选修多门课程,每门课程可以由多个学生选;每一位教师可以讲授多门课程,每一门课程可以由多位教师讲授。 学生实体的属性有:学号、姓名、所在系。教师实体的属性有:教师编号、教师姓名、所属系、职称。课程实体的属性有:课程编号、课程名称、开设系科、课时

27、。选修联系的属性有:成绩。讲授联系的属性有:工作量。37JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)学生学生教师教师课程课程选修选修讲授讲授MNMN学号学号 姓名姓名所在系所在系教师编号教师编号教师姓名教师姓名所属系所属系职称职称课程编号课程编号课程名称课程名称课时课时开设系科开设系科成绩成绩工作量工作量学生、教师和课程ER模型图38JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)逻辑数据模型 也称为“结构数据模型” 。它直接面向数据库的逻辑结构,它涉及到计算机系统和数据库管理系统,这类数据模型有严格的形式化定义,便于在计算机系统

28、中实现。 如层次模型、网状模型、关系模型 。层次模型是用树型结构表示实体及实体间联系的数据模型。 网状模型是用有向图结构表示实体类型及实体间联系的数据模型。 关系模型是用二维表表示实体及实体之间联系的模型。 39JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)可以按照一定的规则将ER模型转换成关系模型。学生(学号,姓名,所在系)教师(教师编号,教师姓名,所属系,职称)课程(课程编号、课程名称、开设系科、课时)选修(学号,课程编号,成绩)讲授(教师编号,课程编号,工作量)40JXNUCIJXNUCIE E7.2.1 数据库系统概述数据库系统概述(续续)4.数据库系统

29、及其开发 目前常用的大中型关系数据库产品有DB2、ORACLE、Sysbase和SQL Server等,中小型关系数据库产品FoxPro、Access等。 数据库系统开发工具很多,目前比较常用的有Visual Basic、 Visual C+、 Delphi、 PowerBuilder和Developer/2000等。 41JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护1.关系数据库的基本概念 按关系模型组织的数据库称为关系数据库。一个关系数据库由一个或多个二维表组成。各表之间可以相互关联,表之间的联系通过公共属性来实现,这个公共属性在一个表中称为主键主键和而在

30、另一个表中称为外键。关系数据库中的表是规范化了的表,具有如下性质:表中属性值是原子的、不可分。表中没有完全相同的两行。表中行的顺序可以任意交换。表中列的顺序可以任意交换。 42JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)Microsoft Access是一个中小型的关系数据库管理系统,它提供了一套完整的工具和向导,帮助初学者在可视化的操作环境中完成大部分数据库的管理和数据库的应用开发工作。在Access 2003中,一个数据库包含的对象有表、查询、窗体、报表、页、宏和模块。除页对象以外,其余对象都存放在同一个数据库文件(.mdb文件)中 。Access

31、 2003数据库窗口43JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)2.数据库的建立与维护 【例2】 以学生、课程与教师关系模型建立“教学管理”数据库。 数据库的创建 创建空数据库。在Access 2003窗口中,选择“文件”“新建”,在“新建文件”对话框中,选择“空数据库”选项,在“文件新建数据库”对话框中,选择文件夹并输入数据库文件名“教学管理.mdb”,单击“创建”按钮,创建了一个空数据库。44JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续) 表的创建与修改表的建立创建表的结构:字段名称、数据类型、说明等字段

32、属性。输入表的数据。Access2003提供了“使用设计器创建表”、“使用向导创建表”和“通过输入数据创建表”3种创建表的方法 。表设计器窗口45JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)表的修改右击表中的对象,选择“设计视图” ,可以修改表的结构。双击表中的对象 ,可以修改表中数据。表的数据输入窗口46JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)3.表与表之间联系的建立添加表单击“工具”菜单下的“关系”选项,在“关系”对话框中,如果数据库没有建立表之间的关联,则将会自动出现“显示表”对话框,如图所示。设定联

33、接将表拖放到与之相联接的另一个表中的相同字段上 。编辑关系选择“实施参照完整性”、“级联更新相关字段”和“级联删除相关记录”三个复选框 。47JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)48JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)4.关系数据库标准语言 SQL SQL是结构化查询语言的缩写。 1987年6月国际标准化组织ISO将其采纳为国际标准。可以通过SQL相应的语句创建表的结构 创建表的结构SQL语句格式 CREATE TABLE 表名(字段名1 数据类型,字段名2 数据类型,) 【例3 】利用语句创建

34、“教师”表结构。CREATE TABLE 教师(教师编号 CHAR (4),教师姓名 CHAR (4),所属系 CHAR (10),职称 CHAR (3)49JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)修改表结构SQL语句格式 ALTER TABLE 表名 ADD 字段名 数据类型, ALTER 字段名 数据类型,DROP 字段,【例4】 先在学生表中添加一个字段:字段名为Email,字段类型为文本,字段大小为20,然后将Email字段大小改为25,再将Email字段删除。 完成上述功能,相应的SQL语句分别为:ALTER TABLE 学生 ADD E

35、mail CHAR(20)ALTER TABLE 学生 ALTER Email CHAR(25) ALTER TABLE 学生 DROP Email50JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)删除表SQL语句格式 DROP TABLE 表名插入数据SQL语句格式INSERT INTO 表名(字段1, 字段2, 字段n) VALUES(常量1, 常量2, 常量n)【例5】在学生表中添加一条记录:学号为0607080216,姓名为曲文,所在系为数学系。INSERT INTO 学 生 (学 号 , 姓 名 , 所 在 系 ) VALUES(“060708

36、0216”, “曲文”, “数学系”)删除表中数据SQL语句格式 DELETE FROM 表名 WHERE 条件51JXNUCIJXNUCIE E7.2.2 数据库的建立和维护数据库的建立和维护(续续)【例6】删除学生表中学号为0607080216的记录。DELETE FROM 学生 WHERE 学号=“0607080216”修改表中数据SQL语句格式 UPDATE 表名 SET 字段1=表达式1,字段2=表达式2, 字段n=表达式n WHERE 条件【例7】将教师编号为1030的教师工作量统统减少10。 UPDATE 讲授 SET 工作量=工作量-10 WHERE 教师编号=”1030”52

37、JXNUCIJXNUCIE E7.2.3 数据库查询数据库查询数据库查询是数据库的核心操作。查询就是以数据库中的数据作为数据源,根据给定条件从指定的数据库的表或查询中查找出符合用户要求的记录,形成一个新的数据集合。实际上,不管采用何种工具,对于绝大多数的查询,数据库管理系统都会在后台构造等效的SELECT语句,实现查询。1.SELECT语句 SQL的数据查询语句格式 SELECT ALL|DISTINCT 字段名或列表达式序列FROM 表名或视图名序列WHERE 条件表达式GROUP BY 字段名序列 HAVING 条件表达式ORDER BY 字段名序列 ASC|DESC53JXNUCIJXN

38、UCIE E7.2.3 数据库查询数据库查询(续续) 单表查询【例8】 检索全体学生的所有记录。SELECT 学号, 姓名, 所在系 FROM 学生或SELECT * FROM 学生【例9】 检索教师中的教师编号及所属系的信息。SELECT 教师编号, 所属系 FROM 教师【例10】 检索学生中所在的系科。SELECT DISTINCT 所在系 FROM 学生54JXNUCIJXNUCIE E7.2.3 数据库查询数据库查询(续续)【例11】 检索计算机系的所有学生信息。SELECT * FROM 学生 WHERE 所在系=计算机系【例12】 检索教师编号在1001到1030之间的教师姓名及

39、所属系的信息。SELECT 教师姓名, 所属系 FROM 教师 WHERE 教师编号 BETWEEN 1001 AND 1030 【例13】 检索李老师的相关信息。SELECT * FROM 教师 WHERE 教师姓名 LIKE 李%【例14】 统计数学系教师的人数。 SELECT COUNT(*) AS 数学系教师人数 FROM 教师 WHERE 所属系=数学系55JXNUCIJXNUCIE E7.2.3 数据库查询数据库查询(续续)【例15】统计每位学生选修课程的平均成绩。SELECT 学号, AVG(成绩) AS 平均成绩 FROM 选修 GROUP BY 学号【例16】 统计每位教师的

40、平均工作量,并将统计结果按平均工作量的降序排列。 SELECT 教师编号, AVG(工作量) AS 平均工作量FROM 讲授GROUP BY 教师编号 ORDER BY 2 DESC【例17】 统计每位教师的最高和最低工作量。SELECT 教师编号, MAX(工作量) AS 最高工作量, MIN(工作量) AS 最低工作量 FROM 讲授 GROUP BY 教师编号56JXNUCIJXNUCIE E7.2.3 数据库查询数据库查询(续续) 多表查询 【例18】 检索学生的学号、姓名、选修的课程编号及成绩。SELECT学生.学号, 姓名, 课程编号, 成绩 FROM 学生, 选修WHERE 学生

41、.学号=选修.学号【例19】 检索数学系的学生选修计算机系的教师开设的课程的学号、姓名、课程名称及成绩信息。SELECT学生.学号, 姓名, 课程名称, 成绩 FROM 学生, 选修, 课程WHERE学生.学号=选修.学号 AND 选修.课程编号=课程.课程编号AND 所在系=数学系 AND 开设系科=计算机系57JXNUCIJXNUCIE E7.2.3 数据库查询数据库查询(续续)2.查询的实现 实现步骤第一步,将“数据库”界面切换到“查询”页,选择“查询”对象。 第二步,双击“在设计视图中创建查询”命令,在弹出的对话框中不选择任何的表或查询,直接关闭对话框,目的是建立一个空查询。第三步,如

42、果是单表查询,则依次单击“查询”“SQL特定查询”“数据定义”菜单命令,打开查询窗口,输入单表查询的SQL语句;如果是多表查询,则依次单击“查询”“SQL特定查询”“联合”菜单命令,在打开的查询窗口中输入多表查询的SQL语句。第四步,单击工具栏中的“运行”命令,即可执行SQL查询。 第五步,当关闭查询结果时,系统会询问“是否保存对查询设计的更改”,选择“是”,则可以保存查询设计,这样便于今后查询;选择“否”,不保存查询设计,以后需要查询时再临时创建查询。 58JXNUCIJXNUCIE E7.2.3 数据库查询数据库查询(续续)例8查询结果 例18查询结果 59JXNUCIJXNUCIE E7

43、.2.4 窗体和报表窗体和报表1.创建窗体 自动创建窗体 在“新建窗体”对话框中,选择“自动创建窗体:纵栏式”选项;在“请选择该对象数据的来源表或查询:”中,单击向下前头,选择“学生”表,;单击“确定”按钮,弹出“学生”纵栏式窗体,表明窗体创建完毕。 “新建窗体”对话框 学生信息纵栏式窗体 60JXNUCIJXNUCIE E7.2.4 窗体和报表窗体和报表使用向导创建窗体 第一步,在“新建窗体”对话框中,选择“窗体向导”选项,在“请选择该对象数据的来源表或查询:”中,单击向下前头,选择“教师”表,单击“确定”按钮,弹出如图7-20所示的对话框,选择可用字段,并单击向右单箭头按钮,或单击向右双箭

44、头(这里选择该按钮),将可用字段添加到“选定的字段”中,单击“下一步”按钮。图7-20 确定窗体字段61JXNUCIJXNUCIE E7.2.4 窗体和报表窗体和报表第二步,在弹出如图7-21所示的对话框中,选择窗体布局中的“表格”,单击“下一步”按钮。图7-21 确定窗体布局 62JXNUCIJXNUCIE E7.2.4 窗体和报表窗体和报表第三步,在弹出如图7-22所示的对话框中,选择“标准”样式,单击“下一步”按钮。图7-22 确定窗体样式63JXNUCIJXNUCIE E7.2.4 窗体和报表窗体和报表第四步,在弹出如图7-23所示的对话框中,指定窗体标题为“教师”,单击“完成”按钮,

45、弹出如图7-24所示的窗体,表明教师信息表格式窗体创建完毕。图7-23 指定窗体标题图7-24 教师信息表格式窗体 64JXNUCIJXNUCIE E7.2.4 窗体和报表窗体和报表2.创建报表 自动创建报表在“新建报表”对话框中,选择“自动创建报表:表格式”选项;在“请选择该对象数据的来源表或查询:”中,单击向下前头,选择“课程”表,单击“确定”按钮,弹出“课程”表格式报表,表明报表创建完毕。“新建报表”对话框 课程信息表格式报表 65JXNUCIJXNUCIE E7.2.4 窗体和报表窗体和报表使用报表向导创建报表第一步,在“新建报表”对话框中,选择“报表向导”选项,在“请选择该对象数据的

46、来源表或查询:”中,单击向下前头,选择“选修”表,单击“确定”按钮,弹出对话框,选择可用字段,并单击向右单箭头按钮,或单击向右双箭头(这里选择该按钮),将可用字段添加到“选定的字段”中,单击“下一步”按钮。第二步,在弹出的对话框中,确定报表是否分组,取默认值,按“学号”分组,单击“下一步”按钮。第三步,在弹出的对话框中,确定报表使用的排序次序和汇总信息,选择第1个排序字段为“课程编号”,排序方式为“升序”,第2个排序字段为“成绩”,排序方式为“降序”,如图7-28所示,单击“下一步”按钮。 第四步,在弹出的对话框中,确定报表的布局方式,选择“阶梯”布局,选择“纵向”方向,单击“下一步”按钮。 第五步,在弹出的对话框中,确定报表样式,选择“淡灰”样式,单击“下一步”按钮。66JXNUCIJXNUCIE E7.2.4 窗体和报表窗体和报表第六步,在弹出的对话框中,指定报表标题为“选修”,单击“完成”按钮,弹出学生选修信息报表,如图7-29所示。 图7-28 确定报表排序次序和汇总信息图7-29 学生选修信息报表 67JXNUCIEJXNUCIE20122012年年0808月月3030日日 南昌南昌

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号