- 1、本文档共63页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章关系数据标准语言SQL
第三章 关系数据库标准语言SQL Structured Query Language,简称SQL,结构化查询语言。 一种介于关系代数与关系演算之间的语言。 集四大功能于一体(定义、查询、操纵、控制)。 成为关系数据库的标准语言(支持:System R、Oracle、Informix、Sybase、INGRES、DB2、FoxPro、Access等。) 产生与发展 1974年由Boyce和Chamberlin提出。 1975至1979年IBM公司研制出 System R 并实现了这种语言。 70年代后期,Oracle公司发行了第一 个采用SQL语言的商业化RDBMS。 SQL语言的标准化 SQL86 (1) 由ANSI(美国国家标准局)于1986年10月公布。 (2) ISO(国际标准化组织)于1987年通过。 SQL89 (1) ISO于1989年公布。 (2) 增加简单的完整性描述语句 。 SQL92 (1) ISO于1992年公布。 (2) 也称SQL2。 (3) 定义了3级SQL规范:初级、中级和高级。 (4) 新的特点:可滚动的游标、动态SQL等。 SQL99 (1) 也称SQL3。 (2) 增加面向对象的功能。 SQL2003 最新的标准。 SQL的主要特点 综合统一 集数据定义语言、数据操纵语言,数据控制语言于一体,语言风格统一,可以完成数据库生命周期内的全部活动。 实体和实体间的联系均用关系表示,带来数据操作符的统一。 以同一种语法结构提供两种使用方式 (1)自含型(模块化语言):DBMS中独立使用,针对DB的所有用户。 (2)宿主型(嵌入式SQL语言):嵌入到宿主语言中使用,针对应用程序员。例如嵌入到JAVA、C、C++等中。 高度非过程化 只要提出“做什么”,无需知道“怎么做”,无需了解存取路径,存取路径的选择以及SQL的操作都由系统自动完成。 面向集合的操作方式 采用集合操作方式,不仅操作对象、查找结果可以是元组,而且一次插入 、删除、修改的对象也可以是元组的集合。 语言简洁,易学易用 只用9个动词,且接近英语口语。 SQL对关系数据库模式的支持 基本表(Base Table) 数据库中实际独立存在的表(关系),存储在实际的文件中,不是由其它表导出。一个基本表可以带若干索引,索引也存放在存储文件中。 视图(View) 虚拟表,换个角度看实际表的结果。 可以由一个或几个基本表导出。 没有实际的存储位置。 数据库中只保存视图的定义,不存放对应的数据。 也可以在视图的基础上再定义视图。 存储文件 存储基本表的数据,若干基本表对应一个存储文件。 数据定义功能 定义与删除模式 定义模式 CREATE SCHEMA 模式名 AUTHORIZATION 用户名 注意:1. 调用该命令的用户必须拥有 DBA权限,或者获得了DBA授予的 CREATE SCHEMA的权限。 2. 定义模式实际上定义了一个命名空 间,在这个空间中可以进一步定义其 它一些数据库对象。 删除模式 DROP SCHEMA 模式名 CASCADE | RESTRICT 注意CASCADE与RESTRICT的区别! 定义数据库 格式: CREATE DATABASE 数据库名 DROP DATABASE 数据库名 注: 各个数据库系统中的格式变化很大,因此不再进行定义格式的扩充,请查阅相关DBMS的文档。 先需进行数据库设计并创建数据字典。 例:SQL Server中定义数据库的格式 CREATE DATABASE 数据库名称 ON PRIMARY(NAME = 数据库逻辑文件名, FILENAME = ‘路径名: \操作系统数据文件名’,(注:此文 件名后缀为.mdf) SIZE = ?? MB, (注:比如50MB) MAXSIZE = ?? MB, (注:比如70MB) FILEGROWTH = ??MB) (注:比如1MB) LOG ON (NAME = 日志逻
文档评论(0)