PL/SQL - 基本语法
在本章中,我们将讨论 PL/SQL 的基本语法,它是一种块结构语言; 这意味着 PL/SQL 程序被划分并编写成逻辑代码块。 每个块由三个子部分组成 −
| S.No | Sections & Description |
|---|---|
| 1 |
Declarations 此部分以关键字 DECLARE 开头。 它是一个可选部分,定义了程序中要使用的所有变量、游标、子程序和其他元素。 |
| 2 |
Executable Commands 此部分包含在关键字 BEGIN 和 END 之间,它是必填部分。 它由程序的可执行 PL/SQL 语句组成。 它应该至少有一个可执行的代码行,可能只是一个NULL 命令,表示什么都不应该被执行。 |
| 3 | Exception Handling 本节以关键字 EXCEPTION 开头。 此可选部分包含处理程序中的错误的异常。 |
每个 PL/SQL 语句都以分号 (;) 结束。 PL/SQL 块可以使用 BEGIN 和 END 嵌套在其他 PL/SQL 块中。 以下是 PL/SQL 块的基本结构 −
DECLARE <declarations section> BEGIN <executable command(s)> EXCEPTION <exception handling> END;
'Hello World' 示例
DECLARE message varchar2(20):= 'Hello, World!'; BEGIN dbms_output.put_line(message); END; /
end; 行表示 PL/SQL 块的结束。 要从 SQL 命令行运行代码,您可能需要在代码最后一行之后的第一个空白行的开头键入 /。 在 SQL 提示符下执行上述代码时,会产生以下结果 −
Hello World PL/SQL procedure successfully completed.
PL/SQL 标识符
PL/SQL 标识符是常量、变量、异常、过程、游标和保留字。 标识符由一个字母组成,可选地后跟更多字母、数字、美元符号、下划线和数字符号,并且不应超过 30 个字符。
默认情况下,标识符不区分大小写。 因此,您可以使用 integer 或 INTEGER 来表示数值。 您不能使用保留关键字作为标识符。
PL/SQL分隔符
分隔符是具有特殊含义的符号。 以下是 PL/SQL 中的分隔符列表 −
| 分隔符 | 描述 |
|---|---|
| +, -, *, / | 加法、减法/否定、乘法、除法 |
| % | 属性指示符 |
| ' | 字符串分隔符 |
| . | 组件选择器 |
| (,) | 表达式或列表分隔符 |
| : | 主变量指示符 |
| , | 项目分隔符 |
| " | 带引号的标识符分隔符 |
| = | 关系运算符 |
| @ | 远程访问指示器 |
| ; | 语句终止符 |
| := | 赋值运算符 |
| => | 关联运算符 |
| || | 连接运算符 |
| ** | 指数运算符 |
| <<, >> | 标签分隔符(开始和结束) |
| /*, */ | 多行注释分隔符(开始和结束) |
| -- | 单行注释指示器 |
| .. | 范围运算符 |
| <, >, <=, >= | 关系运算符 |
| <>, '=, ~=, ^= | 不等于的不同版本 |
PL/SQL 注释
程序注释是解释性语句,可以包含在您编写的 PL/SQL 代码中,并帮助任何人阅读其源代码。 所有编程语言都允许某种形式的注释。
PL/SQL 支持单行和多行注释。 PL/SQL 编译器会忽略任何注释中的所有字符。 PL/SQL 单行注释以分隔符 --(双连字符)开头,多行注释由 /* 和 */ 括起来。
DECLARE -- variable declaration message varchar2(20):= 'Hello, World!'; BEGIN /* * PL/SQL executable statement(s) */ dbms_output.put_line(message); END; /
在 SQL 提示符下执行上述代码时,会产生以下结果 −
Hello World PL/SQL procedure successfully completed.
PL/SQL 程序单元
PL/SQL 单元是以下任何一种 −
- PL/SQL block
- Function
- Package
- Package body
- Procedure
- Trigger
- Type
- Type body
这些单元中的每一个都将在接下来的章节中进行讨论。

