- PL/SQL 教程
- PL/SQL - 主页
- PL/SQL - 概述
- PL/SQL - 环境
- PL/SQL - 基本语法
- PL/SQL - 数据类型
- PL/SQL - 变量
- PL/SQL - 常量和文字
- PL/SQL - 运算符
- PL/SQL - 条件
- PL/SQL - 循环
- PL/SQL - 字符串
- PL/SQL - 数组
- PL/SQL - 过程
- PL/SQL - 函数
- PL/SQL - 游标
- PL/SQL - 记录
- PL/SQL - 异常
- PL/SQL - 触发器
- PL/SQL - 包
- PL/SQL - 集合
- PL/SQL - 事务
- PL/SQL - 日期和时间
- PL/SQL - DBMS 输出
- PL/SQL - 面向对象
- PL/SQL 有用资源
- PL/SQL - 问题与解答
- PL/SQL - 快速指南
- PL/SQL - 有用的资源
- PL/SQL - 讨论
PL/SQL - 基本语法
在本章中,我们将讨论块结构语言PL/SQL的基本语法;这意味着 PL/SQL 程序被划分并以逻辑代码块编写。每个块由三个子部分组成 -
序列号 | 章节和描述 |
---|---|
1 |
声明 本节以关键字DECLARE开始。它是一个可选部分,定义了程序中使用的所有变量、游标、子程序和其他元素。 |
2 |
可执行命令 该部分包含在关键字BEGIN和END之间,是强制部分。它由程序的可执行PL/SQL 语句组成。它应该至少有一行可执行代码,这可能只是一个NULL 命令,表示不应该执行任何操作。 |
3 | 异常处理 本节以关键字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; /
结束;行表示 PL/SQL 块的结束。要从 SQL 命令行运行代码,您可能需要在代码最后一行之后的第一个空行的开头键入 /。当上面的代码在 SQL 提示符下执行时,会产生以下结果 -
Hello World PL/SQL procedure successfully completed.
PL/SQL 标识符
PL/SQL 标识符是常量、变量、异常、过程、游标和保留字。标识符由一个字母组成(可选后跟更多字母、数字、美元符号、下划线和数字符号),并且不应超过 30 个字符。
默认情况下,标识符不区分大小写。因此可以使用整数或INTEGER来表示数值。您不能使用保留关键字作为标识符。
PL/SQL 分隔符
分隔符是具有特殊含义的符号。以下是 PL/SQL 中的分隔符列表 -
分隔符 | 描述 |
---|---|
+、-、*、/ | 加法、减法/求反、乘法、除法 |
% | 属性指标 |
' | 字符串分隔符 |
。 | 组件选择器 |
(,) | 表达式或列表分隔符 |
: | 宿主变量指示器 |
, | 项目分隔符 |
” | 带引号的标识符分隔符 |
= | 关系运算符 |
@ | 远程访问指示灯 |
; | 语句终止符 |
:= | 赋值运算符 |
=> | 协会运营商 |
|| | 串联运算符 |
** | 求幂运算符 |
<<,>> | 标签分隔符(开始和结束) |
/*, */ | 多行注释分隔符(开始和结束) |
-- | 单行评论指示器 |
.. | 范围运算符 |
<、>、<=、>= | 关系运算符 |
<>、'=、~=、^= | NOT EQUAL 的不同版本 |
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 块
- 功能
- 包裹
- 封装体
- 程序
- 扳机
- 类型
- 型体
每个单元都将在以下章节中讨论。