PL/SQL 功能

可以使用数据库服务器接口来编译和执行 PL/SQL 语句和脚本。

可以执行下列 PL/SQL 语句:
  • 匿名块;例如 DECLARE...BEGIN...END
  • CREATE OR REPLACE FUNCTION 语句
  • CREATE OR REPLACE PACKAGE 语句
  • CREATE OR REPLACE PACKAGE BODY 语句
  • CREATE OR REPLACE PROCEDURE 语句
  • CREATE OR REPLACE TRIGGER 语句
  • CREATE OR REPLACE TYPE 语句
  • DROP PACKAGE 语句
  • DROP PACKAGE BODY 语句

可以从其他 PL/SQL 语句或 SQL PL 语句中调用 PL/SQL 过程和函数。可以使用 CALL 语句从 SQL PL 中调用 PL/SQL 过程。

在 PL/SQL 上下文中,支持下列语句和语言元素:
  • 类型声明:
    • 关联数组
    • 记录类型
    • VARRAY 类型
  • 子类型声明
  • 变量声明:
    • %ROWTYPE
    • %TYPE
  • 基本语句、子句和语句属性:
    • 赋值语句
    • NULL 语句
    • RETURNING INTO 子句
    • 语句属性,包括 SQL%FOUND、SQL%NOTFOUND 和 SQL%ROWCOUNT
  • 控制语句和结构:
    • CASE 语句:
      • 简单 CASE 语句
      • 搜索型 CASE 语句
    • 异常处理
    • EXIT 语句
    • FOR 语句
    • GOTO 语句
    • IF 语句
    • LOOP 语句
    • PIPE ROW 语句
    • RETURN 语句
    • WHILE 语句
  • 静态游标:
    • CLOSE 语句
    • 游标 FOR 循环语句
    • FETCH 语句(包括以 %ROWTYPE 变量为目标的 FETCH INTO)
    • OPEN 语句
    • 参数化游标
    • 游标属性
  • REF CURSOR 支持:
    • 类型为 REF CURSOR 的变量和参数
    • 强 REF CURSOR
    • OPEN FOR 语句
    • 将 REF CURSOR 返回到 JDBC 应用程序
  • 错误支持:
    • RAISE_APPLICATION_ERROR 过程
    • RAISE 语句
    • SQLCODE 函数
    • SQLERRM 函数