ORACLE官方SQL语言参考笔记之Oracle SQL简介篇(第一章)

Posted 二次猿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORACLE官方SQL语言参考笔记之Oracle SQL简介篇(第一章)相关的知识,希望对你有一定的参考价值。

本文简述

中文名:《SQL语言参考笔记》

英文名:《SQL Language Reference》

时间:阅读于2018年3月21日

注意事项:跳过基本概念和非重要内容,重点举例说明,并且加粗,部分内容可能在其他章节会再次详细介绍,表格如果排版不美观,可以复制到excle进行直观展示,代码部分根据实际情况注释和说明


本文包括如下内容

结构化查询语言(SQL)是所有程序使用的一组语句。
用户访问Oracle数据库中的数据。
应用程序和Oracle工具通常允许用户不直接使用SQL访问数据库,
但是,这些应用程序在执行用户请求时必须使用SQL。
本章提供了大多数数据库系统使用的SQL的背景信息。

包括如下主题:

  • 1.1 SQL的历史

  • 1.2 SQL标准

    • 1.2.1 SQL是如何工作的

    • 1.2.2 所有关系数据库的公共语言

  • 1.3 常规语法

  • 1.4 工具支持

1.1 SQL的历史

E.F.Codd博士发表了这篇论文,“一种大型共享数据库的数据关系模型”,于6月份发表在“计算机机械协会”杂志上

ACM通讯。Codd的模型现在被接受为关系数据库管理系统(RDBMS)。语言,结构英语
查询语言(Sequel)是由IBM公司开发的,用于使用Codd的模型。

后来,续集变成了SQL(仍然发音为“Sequel”)。在1979,关系软件公司(现为甲骨文)推出了第一批商用产品。

SQL的实现。如今,SQL已被接受为标准的RDBMS语言。

1.2 SQL标准

Oracle致力于遵守业界接受的标准,并积极参与SQL标准委员会。业界认可的委员会是美国国家标准协会(ANSI)国际标准化组织(标准化组织),隶属于国际电工委员会(IEC)。

ANSI和ISO/IEC都接受SQL作为关系数据库的标准语言。当这些组织同时发布新的sql标准时,标准的名称符合组织使用的约定,但标准在技术上是相同的。

最新的SQL标准于2008年7月通过,通常称为SQL:2008。这个标准的正式名称是:

  • ANSI/ISO/IEC 9075:2008, "Database Language SQL", Parts 1
    ("SQL/Framework"), 2 ("SQL/Foundation"), 3 ("SQL/CLI"), 4 ("SQL/PSM"), 9 ("SQL/MED"), 10 ("SQL/OLB"), 11("SQL/Schemata"), 13 ("SQL/JRT"), and
    ANSI/ISO/IEC 9075-14:2008, "Database Language SQL", Part 14 ("SQL/XML")

  • ISO/IEC 9075:2008, "Database Language SQL", Parts 1 ("SQL/Framework"), 2
    ("SQL/Foundation"), 3 ("SQL/CLI"), 4 ("SQL/PSM"), 9 ("SQL/MED"), 10

("SQL/OLB"), 11("SQL/Schemata"), 13 ("SQL/JRT"), and ISO/IEC 9075-14:2008,
"Database Language SQL", Part 14 ("SQL/XML")

1.2.1 SQL是如何工作的

SQL的优点为所有类型的用户提供了好处,包括应用程序程序员、数据库管理员、管理人员和最终用户。从技术上讲,SQL是一种数据子语言。SQL的目的是为关系数据库(如Oracle数据库)提供接口,所有SQL语句都是对数据的指令。basic semantic element 基本语素,在这个SQL中,它不同于C和Basic这样的通用编程语言。

SQL的特性如下

  • 它以组而不是单个单位处理数据集。

  • 它为数据提供自动导航。

  • 它使用复杂而强大的语句,因此独立存在。流控制语句最初不是SQL的一部分,但它们在最近接受的O中找到。国际标准化组织国际标准化组织9075-5:1996.
    流控制语句通常被称为“持久存储模块”(PSM),Oracle SQL的PL/SQL扩展类似于PSM。

SQL允许您在逻辑级别处理数据。只有当您想要操作数据时,您才需要关注实现细节。例如,为了从表中检索一组行,您定义了一个用于过滤行的条件。满足条件的所有行在一个步骤中检索,并可以作为一个单元传递给用户、另一个sql语句或应用程序。您不必一行一行地处理这些行,也不必担心它们是如何物理存储或检索的。所有SQL语句使用优化器,Oracle数据库,确定一部分其他访问指定数据的最有效方法。Oracle还提供了一些技术,您可以使用这些技术使优化器更好地执行其任务。

SQL为各种任务提供语句,包括:

  • 查询数据

  • 插入、更新和删除表中的行

  • 创建、替换、更改和删除对象

  • 控制对数据库及其对象的访问

  • 确保数据库的一致性和完整性

SQL以一种一致的语言统一了前面的所有任务。

1.2.2 所有关系数据库的公共语言

所有主要的关系数据库管理系统都支持SQL,因此您可以将SQL所获得的所有技能从一个数据库转移到另一个数据库。此外,所有用SQL编写的程序都是可移植的。它们通常可以在很少修改的情况下从一个数据库移动到另一个数据库。

1.3 常规语法

以下用于发出SQL语句的词法约定专门适用于SQL的Oracle数据库实现,但在其他SQL实现中通常是可以接受的。
当您发出SQL语句时,可以在语句定义中的任何位置包含一个或多个制表符、回车、空格或注释。

因此,Oracle数据库以相同的方式评估以下两条语句:

SELECT last_name, salary * 12, months_between(SYSDATE, hire_date)
  FROM hr.employees
 WHERE department_id = 30
 ORDER BY last_name;
SELECT last_name, salary * 12, months_between(SYSDATE, hire_date)
  FROM hr.employees
 WHERE department_id = 30
 ORDER BY last_name;

大小写在保留词、关键字、标识符和参数中是不重要的。然而,大小写在文本文字和引文名称中都很重要。

1.4 工具支持

Oracle提供了多种实用程序来帮助您的SQL开发过程:

  • Oracle SQL Developer

  • SQL*Plus

  • Oracle JDeveloper

  • Oracle Application Express

Oracle调用接口和Oracle预编译程序允许您在过程编程语言中嵌入标准SQL语句。

  • Oracle调用接口(OCI)允许在C程序中嵌入SQL语句

  • Oracle中将,PRO*C / C++和 Pro*COBOL ,解释嵌入的SQL语句并将它们转换为可分别由C/C和COBOL编译器理解的语句

大多数(但不是所有)Oracle工具也支持Oracle SQL的所有功能。本参考说明SQL的完整功能。如果您正在使用的Oracle工具不支持此CompLete功能,然后您可以在描述工具的手册中找到关于限制的讨论,如SQL*Plus用户指南和参考。

本文重点内容




简书网址:https://www.jianshu.com/u/4149ca7cf286



让程序猿能共同成长起来

让程序猿传播和共享技术

让程序猿养成做笔记习惯

让程序猿持续的增长知识

让程序猿写代码更加规范

让程序猿职场上学会低调


以上是关于ORACLE官方SQL语言参考笔记之Oracle SQL简介篇(第一章)的主要内容,如果未能解决你的问题,请参考以下文章

Oracle实战笔记(第六天)之PL/SQL基础

Oracle之PL/SQL学习笔记

Oracle之PL/SQL学习笔记

Oracle学习笔记之PL/SQL编程

慕课网笔记之oracle开发利器-PL/SQL基础

Oracle数据库学习笔记1—SQL