欢迎来到天天文库
浏览记录
ID:40265981
大小:1.13 MB
页数:147页
时间:2019-07-29
《第3章 关系数据库标准语言—SQL》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第3章SQL语言学习目标了解SQL的基本构成掌握SQL的数据定义语言掌握SQL语言的各种查询的实现掌握SQL语言的数据更新语言掌握视图的定义及其应用3.1SQL概述SQL(StructuredQueryLanguage,结构化查询语言),是定义和管理关系数据库的国际标准的编程语言。SQL于1974年由Boyce和Chamberlin提出的,并于1974~1979年由IBM公司的SanJoseResearchLaboratory研制了关系数据库管理系统SystemR上实现了这种功能。3.1.1SQL的发展SQL语言是定义和管理关系数据库的国际标准的编程语言
2、。所经历的主要阶段如下:1986年,ANSI的数据库委员会发布了文件:X.135-1986《数据库语言》(简称SQL-86)。1987年,ISO也通过了这一标准。1989年10月,ANSI的数据库委员会发布了文件:X3.135-1989《数据库语言-完整和增强的SQL》(简称SQL-89)发布,SQL89成为DBMS遵循的新标准。1992年8月,ANSI和ISO共同发布了SQL-92(简称SQL-2)标准。1999年,ISO发布了SQL-99(简称SQL-3)标准。2003年,ISO发布了SQL-2003(简称SQL-4)标准。3.1.2SQL的特点SQ
3、L是一个集数据查询、数据操纵、数据定义和数据控制于一体数据库管理系统语言。主要特点有:综合统一。利用SQL可以独立完成数据库生命周期中的全部活动;高度非过程化。利用SQL实现对关系的操作,用户只需提出“干什么”,无需规定“如何干”;即不需要指定操作过程,也不需要了解存取路径;面向集合的操作方式。一种(语法)结构两种使用方式,表现在:联机使用方式:即自主式语言;嵌入式使用方式:即SQL语句嵌入到某种高级语言的程序中使用。语言简洁,易学易用。SQL功能强大且具有两种不同的使用方式,但语言十分简洁,完成核心功能的语句仅仅只有9个,如下表3-1所示。表3-1SQ
4、L语言的动词SQL功能动词数据查询SELECT数据定义CREATE,ALTER,DROP数据操纵INSERT,UPDATE,DELETE数据控制GRANT,REVOKE3.1.3SQL的组成SQL语言主要由以下几部分构成:1数据定义功能即SQL的模式语句,主要有:模式的定义、修改、删除功能;索引的定义、修改、删除功能;视图的定义、删除功能;存储过程、触发器等的定义、修改、删除功能;各种完整性约束条件的定义及核查机制。2数据操纵功能即SQL的数据操作语句,主要有:基于关系代数和元组演算的数据查询和数据更新(插入、修改和删除)语句;嵌入式SQL的数据操作语句
5、;事务及其控制语句;3数据控制功能关系、视图的访问权限的设置、取消及核查;SQL的连接语句;其它的控制功能语句。3.1.4SQL查询的基本概念SQL支持关系数据库的三级模式结构,如下图3-1所示。SQL基本表1基本表2基本表n基本表p视图1视图m存储文件1存储文件k……………………外模式模式内模式图3-1SQL的三级模式结构①基本表(Table):是独立存在的表,一个关系对应一个基本表,表中保存同一实体集中各实体的数据。一个或多个基本表对应一个存储文件。一个基本表可以定义若干索引,索引也存储在存储文件中。②视图(View):是由基本表或视图导出的虚表,本
6、身不存储实际的数据。在数据库中存储的只是视图的定义。从用户的角度,视图和基本表在概念上是等价的。除此之外,SQL中还有导出表,即查询结果集。是根据基本表或视图查询得到的结果集。③约束和断言(ConstraintAndAssertion):是标识有效数据集合的命名规则。它们为表、行或域(列)限定了相容的数据;并定义了两个检查特性:延迟模式和约束核查时间。断言是与一些模式有关;常以核查约束的形式出现;约束是与一些表或域有关。在实际的DBMS产品中常以核查约束或规则的形式出现。④触发器(Trigger):是与单一基本表相关联的命名规则。每个触发器定义一个触发器
7、事件,规定了对表进行更新操作时在表中产生的一个触发动作;触发时间规定了被触发动作发生的时间是在触发事件之前或之后。⑤SQL调用例程(SQLInvokedRoutine):SQL调用例程是有一些模式或模块组成。由系统定义:称为调用例程或过程;由用户定义:称为自定义函数或存储过程。SQL中要定义的数据对象有许多,基本的有:基本表、视图、索引等,这些都由SQL的数据定义语句来实现如下表3-2。先讨论基本表和索引的相关定义语句。3.2SQL的数据定义语言操作对象操作方式创建删除修改基本表CREATETABLEDROPTABLEALTERTABLE视图CREATE
8、VIEWDROPVIEW索引CREATEINDEXDROPINDEX数据库CRE
此文档下载收益归作者所有