`
快乐让让
  • 浏览: 18387 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论
阅读更多
一. 什么是PL/SQL
  PL/SQL(Procedual Language/SQL)是Oracle在标准SQL语言上的过程性扩展。PL/SQL不仅允许嵌入SQL语句,而且允许定义变量和常量,允许使用条件语句和循环语句,允许使用例外处理各种错误。

二. SQL的简介
  20世界80年代初期,ANSI(American National Standards Institute)数据库标准委员会开始制定有关关系语言的标准。
  直到1986年,数据库标准委员会才退出第一个SQL语言标准SQL-86。
  随后根据数据库技术的发展,SQL标准不断的扩展和修正,又推出了SQL-89,SQL-92,SQL-99标准。
  1979年,Relational Software公司(Oracle前身)首先向市场推出了SQL执行工具,Oracle完全遵从ANSI的SQL标准。截至到10g,已经集成到最新的SQL-99标准。

三. SQL语言的分类
  • 数据查询语言(SELECT语句):用于检索数据库数据。在SQL所有语句中,SELECT语句的功能和语法最复杂、最灵活。
  • 数据库操纵语言(Data Manipulation Language,DML):用于改变数据库数据,包括INSERT,UPDATE和DELETE三条语句。
  • 事物控制语言(Transactional Control Language,TCL):用于维护数据的一致性,包括COMMIT,ROLLBACK和SAVEPOINT三条语句。其中SAVEPOINT用于设置保存点,以便确认和取消部分数据库改变。
  • 数据库定义语言(Data Definition Language,DDL):用于建立、修改和删除数据库对象。例如使用CREATE TABLE可以建表;使用ALTER TABLE可以修改表结构;使用DROP TABLE可以删除表。但是注意,DDL语句会自动提交事物。
  • 数据控制语言(Data Control Language,DCL):用于执行权限授予和收回操作,包括GRANT和REVOKE两条命令。但是注意,DCL语句同样也会自动提交事物。


注:SQL语句中,关键字、表名和字段名称是不区分大小写的,但是为了代码的可读性,推荐在PL/SQL块中,全部大写。
四. PL/SQL简介
  PL/SQL是Oracle在标准SQL语言上的过程性扩展,它不仅允许嵌入SQL语句,而且允许定义变量和常量,允许过程语言结构(条件分支语句和循环语句),允许使用例外处理Oracle错误等。

PL/SQL具有以下一些有点和特征
  • 提高应用程序的性能:使用SQL语句时,每次单条语句就向数据库提交请求。而通过PL/SQL块可以将多条SQL语句组织到一起提交。
  • 提供模块化的程序设计功能:可以集成业务规则和逻辑到PL/SQL块中进行管理和处理。
  • 允许定义标识符:可以在PL/SQL块中定义变量、常量、游标和例外等各种标识符。
  • 拥有过程语言的控制结构:PL/SQL块中可以使用各类条件分支语句和循环语句。
  • 具有良好的兼容性:可以在任何IDE平台上使用。(屁话)
  • 处理运行错误:通过PL/SQL所提供的例外(EXCEPTION),开发人员可以集中处理各种Oracle错误和PL/SQL错误,从而简化了错误处理。


五. Oracle 10g PL/SQL新特性
  • 在9i中,当使用FORALL语句执行批量SQL操作时,只能在PL/SQL集合类型(嵌套表、VARRAY)上使用连续下标;而从Oracle 10g开始,通过使用INDICES OF子句和VALUES OF子句,就可允许在PL/SQL集合类型(嵌套表、VARRAY)上使用非连续下标。
  • 在Oracle 10.1开始,在编写PL/SQL块时可以使用新的数据类型:BINARY_FLOAT和BINARY_DOUBLE。
  • 从Oracle 10.1开始,Oracle为嵌套表提供了更多新的操作,包括比较嵌套表是否相等、检测某元素是否为嵌套表成员、检测一个嵌套表是否是另一个嵌套表的子集、在嵌套表上执行集合操作等等。
  • 从Oracle 10.1之前,当为字符串变量赋值时,必须要使用两个单引号,如果在字符串数值中需要包含单引号,那么必须要使用两个单引号来表示一个单引号值;而从10.1开始,如果在字符串数值中需要包含单引号,那么开发人员可以在字符串中使用其他分隔符({},[],<>)包围字符串,使得开发人员可以在字符串中直接将单引号作为字符值引用。
  • 从10.1开始,Oracle可以隐式地将CLOB数据转换为NCLOB数据,也可以将NCLOB数据隐式地转换为CLOB数据,但是为加快数据转换数度,用户可以继续使用TO_CLOB和TO_NCLOB函数进行类型转换。
  • 从Oracle 10.1开始,Oracle增加了新的倒叙查询函数SCN_TOTIMESTAMP和TIMESTAMP_TO_SCN。通过使用函数SCN_TO_TIMESTAMP,可以根据SCN值取得相应的日期时间值;通过使用函数TIMESTAMP_TO_SCN,可以根据日期时间值取得相应的SCN值。


省略Oracle 9及其之前的相关特性。现在用不到了。。。


五. PL/SQL开发工具
  很多哈,现在安装Oracle 11g时会默认带一个SQL/DEVELOPER的工具,这个是Oracle官方提供的工具,很好用。推荐用这个。其他的不推荐。
  现在也没必要去用SQL/PLUS了,超级难用,也不好看。命令行的所有东西都能在SQL/DEVELOPER的工具完成,何必作践自己。- -!
分享到:
评论

相关推荐

    Oracle数据库实用教程第三章 PL/SQL程序设计.pptx

    本章节主要介绍了 PL/SQL 程序设计的基础知识,包括 PL/SQL 的优点、运行 PL/SQL 程序、PL/SQL 块结构、PL/SQL 基本语法、PL/SQL 处理流程、异常处理、游标、存储过程和函数、触发器等。 PL/SQL 的优点包括: * ...

    Oracle PL/SQL程序设计(第5版)(下册)第二部分

    第1章 PL/SQL概述 3 第2章 创建并运行PL/SQL代码 21 第3章 语言基础 50 第2部分 PL/SQL程序结构 第4章 条件和顺序控制 77 第5章 用循环进行迭代处理 96 第6章 异常处理 118 第3部分 PL/SQL数据 第7章 使用数据 159 ...

    PL/SQL基础编程,实例自写

    #### 一、PL/SQL概述 PL/SQL,全称为Procedural Language for SQL,是Oracle数据库特有的高级程序设计语言。它结合了SQL的数据处理能力和传统编程语言的控制结构,使开发者能够在数据库环境中编写复杂的应用程序。...

    PL/SQL 程序设计

    PL/SQL 程序设计 本章主要重点:  PL/SQL概述  PL/SQL块结构  PL/SQL流程  运算符和表达式  游标  异常处理  数据库存储过程和函数  包  触发器

    oracle pl/sql fundamentals

    1. **PL/SQL概述**:了解PL/SQL的基本概念,包括它的结构、块(DECLARE、BEGIN、END)以及如何在SQL*Plus或其他开发工具中执行PL/SQL程序。 2. **变量和数据类型**:深入学习PL/SQL中的变量声明,包括内置的数据...

    Oracle PL/SQL编程及最佳实践

    四、PL/SQL 概述 PL/SQL 是一种高级编程语言,用于开发 Oracle 数据库中的存储过程、函数和触发器。PL/SQL language 提供了强大的编程能力,可以实现复杂的业务逻辑,并且与 Oracle 数据库紧密集成。PL/SQL 程序...

    Oracle PL/SQL程序设计(第5版)(上下册)

    ### Oracle PL/SQL程序设计(第5版)(上下册)知识点概述 #### 一、PL/SQL编程基础 - **PL/SQL简介**:PL/SQL(Procedural Language for SQL)是Oracle数据库的一种内嵌式过程化语言,用于增强SQL的功能。它允许在SQL...

    Oracle PL SQL程序设计 上 第五版(代码示例)

    第1章 pl/sql概述 3 第2章 创建并运行pl/sql代码 21 第3章 语言基础 50 第2部分 pl/sql程序结构 第4章 条件和顺序控制 77 第5章 用循环进行迭代处理 96 第6章 异常处理 118 第3部分 pl/...

    oracle sql and pl/sql

    #### 二、PL/SQL 概述 1. **定义**:PL/SQL(Procedural Language for SQL)是一种过程化语言,它结合了 SQL 命令和过程式编程语句,使得开发人员能够编写更复杂的数据库应用程序。 2. **功能**: - 过程化代码执行...

    pl/sql语句基础

    #### 一、PL/SQL 概述 PL/SQL (Procedural Language for SQL) 是 Oracle 对标准 SQL 的扩展,由 Oracle 公司开发并整合进 Oracle 数据库和一系列 Oracle 工具中。自 Oracle 6 版本开始,PL/SQL 就作为一项核心功能...

    Oracle PL/SQL程序设计(第5版)(下册) 第一部分

    第1章 PL/SQL概述 3 第2章 创建并运行PL/SQL代码 21 第3章 语言基础 50 第2部分 PL/SQL程序结构 第4章 条件和顺序控制 77 第5章 用循环进行迭代处理 96 第6章 异常处理 118 第3部分 PL/SQL数据 第7章 使用数据 159 ...

    Oracle PL/SQL Training

    课程列表覆盖了PL/SQL的各个方面,第一天的章节包括:PL/SQL概述、创建和运行PL/SQL程序、PL/SQL基础、数据类型、特定特性、记录与集合、游标、控制结构以及动态SQL。这些章节将帮助你理解PL/SQL的基础语法和核心...

    pl/sql_Oracle

    1. PL/SQL概述: PL/SQL(Procedural Language/Structured Query Language)是Oracle扩展的SQL,提供了更丰富的编程能力。它包括声明变量、条件判断、循环控制、异常处理等结构,可以编写存储过程、函数、触发器等...

    PL/SQL Developer 64 bit

    ### PL/SQL Developer 64位概述 #### 1. 什么是PL/SQL Developer? PL/SQL Developer是一款专为Oracle数据库设计的强大集成开发环境(IDE)。它主要面向数据库开发者、DBA(数据库管理员)以及测试人员等专业人士,...

    Oracle PL/SQL编程基础

    #### 一、PL/SQL概述 PL/SQL,即Procedural Language for SQL,是Oracle数据库专有的扩展性语言,用于增强SQL的功能,使其具备编程语言的能力。通过PL/SQL,开发者可以编写复杂的业务逻辑,实现数据处理的自动化,...

    Oracle 11g pl/sql编程

    1. PL/SQL概述:介绍PL/SQL的概念、优势以及它如何与SQL集成,提供程序化解决方案。 2. PL/SQL基础:包括PL/SQL块的结构、变量和数据类型、控制流语句(如IF语句、循环)、错误处理和异常管理。 3. 过程和函数:解释...

    PL/SQL 完全参考

    ### 一、PL/SQL概述 PL/SQL是一种专门设计用于与Oracle数据库交互的程序语言。它扩展了SQL语言的功能,通过引入变量、常量、数组、过程、函数、异常处理等结构化编程元素,使开发者能够编写出更复杂、逻辑更清晰的...

    oracle 11g PL/SQL

    PL/SQL概述 PL/SQL(Procedural Language for SQL)是一种过程化SQL语言,它结合了SQL的查询能力和传统过程化编程语言的控制结构,使得开发者能够在Oracle数据库环境中执行复杂的业务逻辑。Oracle 11g PL/SQL提供...

Global site tag (gtag.js) - Google Analytics