数据库原理与技术v向北航行.PPT

  1. 1、本文档共75页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理与技术v向北航行

第三章 关系数据库标准语言SQL SQL语言 SQL概述 SQL数据查询功能 SQL数据定义功能 SQL数据更新功能 嵌入式SQL SQL概述 历史 1974年,由Boyce和Chamberlin提出,称为SEQUEL(Structured English Query Language)。 1975-1979年,在IBM的San Jose研究室研制的System R上实现。 1981年, IBM在推出SQL/DS关系数据库时,将其命名为SQL (Structured Query Language)。 现在,不仅关系型数据库系统,甚至非关系型数据库系统都将SQL作为其数据库语言。SQL语言已成为当今最为成功和应用最广的数据库语言。 SQL概述(I) 有关标准 随着SQL语言应用的日益广泛,ANSI和ISO先后制定了多个SQL标准: SQL-86:较为简单,主要包括数据定义语言、数据操纵语言、嵌入式语法等几个部分。 SQL-89:增加了对完整性约束的支持。 SQL-92:也称SQL2,是SQL-89的超集,增加了许多新特性,如新的数据类型,更丰富的数据操作,更强的完整性、安全性支持等。 SQL-3:正在讨论中的新的标准,将增加对面向对象模型的支持。 SQL概述(II) 特点 综合统一 集数据定义,数据操纵,数据查询和数据控制于一体。 单一的结构----关系,带来了数据操作符的统一。 高度非过程化 用户只需提出“做什么”,无须告诉“怎么做”,不必了解存取路径。 面向集合的操作方式 操作的对象和操作的结果均为集合。 以同一种语法结构提供两种使用方式 SQL既是自含式语言,又是嵌入式语言 SQL概述(III) 语言简捷,易学易用 类似于英语自然语言 SQL对关系数据库模式的支持 SQL对关系数据库模式的支持 基本表 是本身独立存在的表,一个(或多个)基本表对应一个存储文件 存储文件 由数据块构成的存储空间,用于存储基本表、索引等。其逻辑结构组成了关系数据库的内模式 视图 是从一个或几个基本表中导出的表,其本身不独立存储于数据库中 例子表 SQL数据查询功能 查询语句SELECT的语法: Select [ALL|DISTINCT]目标表达式[{,目标表达式}] From 表名或视图名[{,表名或视图名}] [Where 条件表达式] [Group By 分组列 [{,分组列}][HAVING 条件表达式]] [Order By 排序列 排序方式[{,排序列 排序方式}] SQL数据查询功能 其语义是:从FROM子句给定的表中,检索出满足WHERE子句给定检索条件的记录,并根据SELECT子句从这些记录中选出指定的列(属性)所构成的结果集合。SELECT和FROM两个子句定义了投影操作。WHERE子句给出了选取操作的定义(当涉及多表操作时,WHERE子句要同时给出连接操作条件)。可见,查询语句作为整体代表着关系代数中的投影、选取、连接等操作的组合。但是,由于在查询语句中并不规定投影、选取、连接等操作的执行顺序。因此,它比关系代数更一般,更少过程化。 SQL数据查询功能 单表查询 连接查询 嵌套查询 集合查询 单表查询 查询全体学生的姓名与学号 Select Sname, Sno From Student; 查询全体学生的全部属性 Select * From Student; 查看全体学生的姓名及其出生年份 Select Sname, 2001-Sage From Student; 单表查询(续I) 查询全体学生所在学校、姓名、出生年份和所在系(用小写字母显示系名)。 Select “北航”, Sname, 2001-Sage, ISLOWER(Sdept) From Student; Select “北航” School, Sname, 2001-Sage Birth, ISLOWER(Sdept) From Student; 单表查询(续II) 单表查询(续III) 查询选修了课程的学生学号 Select Distinct Sno From STUDENT; 查询计算机系全体学生的姓名 Select Sname From Student where Sdept=‘CS’; 查询所有年龄在20岁以下的学生姓名及其年龄 Select Sname From Student where Sage20; 单表查询(续IV) 查询年龄在20~23(含20和23岁)之间的学生姓名、性别和年龄。 Select Sname, Ssex, Sage From Stud

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档