PL / SQL是一种块结构语言,即PL./SQL的代码以块的形式编写。PL / SQL还包含Oracle数据库的健壮性,安全性和可移植性。
PL / SQL的每个块均包含以下子部分-
声明- 本节包含所有需要在程序之前声明的项目,例如变量,子程序等。本节在其开头包含关键字DECLARE。通常,声明是PL / SQL程序的可选子部分。
可执行命令 -PL / SQL代码的此部分包含可执行语句。它在开始和结束处包含BEGIN和END。可执行命令是强制性的部分,不能空白。如果没有可执行的语句,则将NULL写入以表明这一点。
异常处理- 此部分包含处理程序过程中可能出现的所有错误或异常的代码。异常处理部分以关键字EXCEPTION开头。
PL / SQL块的基本结构是
DECLARE < Declarations section > BEGIN < Executable commands section > EXCEPTION < Exception handling section > END;
PL / SQL代码的示例是-
SET SERVEROUTPUT ON BEGIN DBMS_OUTPUT. PUT_LINE FOR j IN 1..10 LOOP DBMS_OUTPUT.PUT_LINE(‘Number”|| j ); END LOOP; END;
该程序按顺序显示前十个自然数。
我有外部光标 和1个内部光标 而处理似乎是 处理:-对于游标c1中的每一条记录,我需要检查游标c1中的员工、项目号和月份是否存在于第二个游标C2中。如果条件满足,我需要更新自定义表。所以这个处理需要很长时间。我如何减少流转时长 在我的游标中,有记录,单个记录在游标中处理。对于每一行来说,这需要花费大量时间,对于所有记录来说,这需要超过
主要内容:包规范,包体,使用包元素在本章中,我们将讨论PL/SQL中的包。 包是模式对象,将逻辑上相关的PL/SQL类型,变量和子程序分组。 一个包将有两个强制性的部分 - 包规范/格式 包体或定义 包规范 规范是包的接口。它只是声明可以从包外部引用的类型,变量,常量,异常,游标和子程序。 换句话说,它包含有关包的内容的所有信息,但不包括子程序的代码。 所有放置在规范中的对象被称为公共对象。任何不在包规范中但在包体中编码的子程序称
主要内容:开始和结束事务,提交事务,回滚事务,自动事务控制在本章中,我们将讨论和学习PL/SQL中的事务。 数据库事务是由一个或多个相关SQL语句组成的原子工作单元。它被称为原子操作,因为构成事务的SQL语句带来的数据库修改可以共同提交,即永久化到数据库或从数据库回滚(撤销)。 成功执行的SQL语句和提交的事务不一样。即使成功执行SQL语句,除非提交包含语句的事务,否则可以回滚该语句,并且可以撤消语句所做的所有更改。 开始和结束事务 事务有开始和结束。当
主要内容:索引表,示例,嵌套表,集合方法,集合异常在本章中,我们将讨论PL/SQL中的集合。集合是具有相同数据类型的有序元素组。 每个元素都由一个唯一的下标来表示它在集合中的位置。 PL/SQL提供了三种集合类型 - 索引表或关联数组 嵌套的表 可变大小的数组或类型 Oracle的每种类型的集合有以下特征 - 集合类型 元素个数 下标类型 密集或稀疏 在哪创建 是否为对象类型属性 关联数组(或索引表) 无界 字符串或整数 任意一种 只在PL/SQ
主要内容:基于表的记录,基于游标的记录,用户定义的记录,将记录作为子程序参数在本章中,我们将讨论和学习PL/SQL中的记录。 记录是可以容纳不同种类的数据项的数据结构。 记录由不同的字段组成,类似于数据库表的一行。 例如,想要在图书馆中跟踪记录图书信息。可能希望跟踪每本书的以下属性,例如标题,作者,主题,图书ID。 包含每个这些项目的字段的记录允许将图书视为逻辑单元,并允许以更好的方式组织和表示其信息。 PL/SQL可以处理以下类型的记录 - 基于表的记录 基于游标的记录
主要内容:隐式游标,显式游标在本章中,我们将讨论和学习中的游标。 Oracle创建一个称为上下文区域的内存区域,用于处理SQL语句,它包含处理该语句所需的所有信息; 例如,处理的行数等。 游标是指向此上下文区域的指针。通过游标控制上下文区域,游标保存SQL语句返回的行(一个或多个)。 游标所在的行集称为活动集。 可以命名一个游标,以便在程序中引用它来获取和处理SQL语句返回的行,一次处理一个(行)。PL/SQL中有两种类型的