文档详情

第5章-1:数据库语言SQL.ppt

发布:2016-08-21约8.37千字共40页下载文档
文本预览下载声明
第5章数据库语言SQL 本章概要 SQL是结构化查询语言(Structured Query Language)的缩写,其功能包括数据查询、数据操纵、数据定义和数据控制四个部分。 SQL 语言简洁、方便实用、功能齐全,已成为目前应用最广的关系数据库语言。 本章要求 了解 SQL语言的特点, 掌握SQL语言的四大功能及使用方法, 重点掌握其数据查询功能及其使用。 前言 SQL语言的基本概念与特点 1 SQL语言的发展及标准化 1.1 SQL语言发展史 SQL语言是当前最为成功、应用最为广泛的关系数据库语言,其发展主要经历了以下几个阶段: 1974年由CHAMBERLIN和BOYEE提出,当时称为SEQUEL(STUCTURED ENGLISH QUERY LANGUAGE); IBM公司对其进行了修改,并用于其SYSTEM R关系数据库系统中; 1981年 IBM推出其商用关系关系数据库SQL/DS,并将其名字改为SQL,由于SQL语言功能强大,简洁易用,因此得到了广泛的使用; 今天广泛应用于各种大型数据库,如SYBASE、INFORMIX、 ORACLE、DB2、INGRES等,也用于各种小型数据库,如FOXPRO、ACCESS。 1.2 SQL语言标准化 随着关系数据库系统和SQL语言应用的日益广泛,SQL语言的标准化工作也在紧张革进行着,十多年来已制订了多个SQL标准; 1. 1982年,美国国家标准化局(AMERICAN NATIONAL STANDARD INSTITUTE,简称ANSI)开始制定SQL标准; 2. 1986年,美国国家标准化协会公布了SQL语言的第一个标准SQL86; 3. 1987年,国际标准化组织(ISO)通过了SQL86标准; 4. 1989年,国际标准化组织(ISO)对SQL86进行了补充,推出了SQL89标准; 5. 1992年,ISO又推出了SQL92标准,也称为SQL2; 6. 目前SQL99(也称为SQL3)在起草中,增加了面向对象的功能。 2 SQL语言的基本概念 首先介绍两个基本概念:基本表和视图。 基本表(BASE TABLE):是独立存在的表,不是由其它的表导出的表。一个关系对应一个基本表,一个或多个基本表对应一个存储文件。 视图(VIEW):是一个虚拟的表,是从一个或几个基本表导出的表。它本身不独立存在于数据库中,数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。当基本表中的数据发生变化时,从视图中查询出来的数据也随之改变。 例如:学生数据库中有学生基本情况表STUDENT(SNO,SNAME,SSEX,SAGE,SDEPT),此表为基本表,对应一个存储文件。可以在其基础上定义一个男生基本情况表STUDENT_MALE(SNO,SNAME,SAGE,SDEPT), 它是从STUDENT中选择SSEX=’男’的各个行,然后在SNO,SNAME,SAGE,SDEPT上投影得到的。 在数据库中只存有STUDENT_MALE的定义,而STUDENT_MALE的记录不重复存储。 在用户看来,视图是通过不同路径去看一个实际表,就象一个窗口一样,我们通过窗户去看外面的高楼,可以看到高楼的不同部分,而透过视图可以看到数据库中自己感兴趣的内容。 1.3 SQL语言的主要特点 SQL语言类似于英语的自然语言,简洁易用。 SQL语言是一种非过程语言,即用户只要提出“干什么”即可,不必管具体操作过程,也不必了解数据的存取路径,只要指明所需的数据即可。 SQL语言是一种面向集合的语言,每个命令的操作对象是一个或多个关系,结果也是一个关系。 SQL语言既是自含式语言,又是嵌入式语言。可独立使用,也可嵌入到宿主语言中。 自含式语言可以独立使用交互命令,适用于终端用户、应用程序员和DBA; 嵌入式语言使其嵌入在高级语言中使用,供应用程序员开发应用程序。 5.1 SQL 的简单查询 SQL语言使用数据定义语言(DATA DEFINITION LANGUAGE,简称DDL)实现其数据定义功能,可对数据库用户、基本表、视图、索引进行定义和撤消。 SELECT命令的格式与基本使用 数据查询是数据库中最常见的操作。 SQL语言提供SELECT语句,通过查询操作可得到所需的信息。 SELECT语句的一般格式为: SELECT〈列名〉[{,〈列名〉}] FROM〈表名或视图名〉[{,〈表名或视图名〉}] [WHERE〈检索条件〉] [GROUP BY 列名1[HAVING 条件表达式]] [ORDER BY 列名2[ASC|DESC]]; 查询的结果是仍是一个表。 SELECT语句的执行过程是: 根据WHERE
显示全部
相似文档