codecamp

PL / SQL基本语法

PL / SQL是一块结构语言,即PL / SQL程序被划分和写入的代码的逻辑块。每块由三个子部分组成:

SN 段和说明
1

声明

本节以关键字声明开始。它是一个可选部分,并且限定在程序中使用的所有变量,游标,子程序,和其他元素。

2

可执行命令

这部分是封闭的关键字, 开始结束 ,这是一个强制性的部分。它包括程序的可执行PL / SQL语句。它应具有的代码的至少一个可执行线,这可能只是一个NULL命令以指示什么都不执行。

3

异常处理

本节以关键字EXCEPTION开始。本节又是可选的,包含在程序处理错误异常(S)。

每一个PL / SQL语句都以分号(;)结束。 PL / SQL块可以被嵌套使用BEGINEND等PL / SQL块中。下面是一个PL / SQL块的基本结构:

DECLARE
   <declarations section>
BEGIN
   <executable command(s)>
EXCEPTION
   <exception handling>
END;

在'世界您好'示例:

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个字符。

默认情况下, 标识符不区分大小写 。所以,你可以使用整数整数 ,表示数值。不能使用保留关键字作为标识符。

在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块

  • 功能

  • 包体

  • 程序

  • 触发

  • 类型

  • 机身类型

每一单位将在即将到来的章节中讨论。


PL / SQL程序
PL / SQL函数
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }