PL/SQL块与表达式

Posted 工作在浏览器上人-YangBobin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PL/SQL块与表达式相关的知识,希望对你有一定的参考价值。

一、块(Block)

是PL/SQL的基本执行单元,由定义部分,执行部分(必须)和例外处理部分组成。

Declare
/*定义部分――定义常量、变量、游标、例外、复杂数据类型*/
Begin
/*执行部分――要执行的pl/sql语句和sql语句*/
Exception
/*例外处理部分――处理运行的各种错误*/
end;

例:

declare
     v_ename varchar2(5);
     v_sal number(7,2);
begin
     select ename,sal into v_ename,v_sal from emp
     where empno = &no;
     dbms_output.put_line(\'雇员名:\'||v_ename||\' 薪水: \'||v_sal);
exception
     when no_data_found
     then dbms_output.put_line(\'您输入的编号有误!\');    
end;

二、PL/SQL词汇单元

PL/SQL词汇单元是它的最小的组件:分隔符、标识符、字面量、注释。

1、分隔符

分隔符是一个字符或字符的组合,在PL/SQL中有特殊的意义。不要在分隔符中嵌入其它的字符。

简单分隔符只有一个字符。

  • +, -, *, / :加法,减法/否定,乘法,除法
  • %:属性索引
  • ‘:字符串分隔符
  • .:组件选择
  • (,):表达式或列表分隔符
  • ::主机变量指示符
  • ,:项目分离符
  • “:带引号的标识符分隔符
  • =:关系运算符
  • @:远程访问指示符
  • ;:声明终止符

复合分割符由两个字符组成。

  • :=:赋值运算符
  • =>:操作符关联
  • **:乘方运算符
  • <<, >>:标签分隔符(开始和结束)
  • /, /:多行注释分隔符(开始和结束)
  • –:单行注释指示符
  • ..:范围操作
  • <, >, <=, >=:关系运算符
  • <>, ‘=, ~=, ^=:不同版本的不相等的

2、标识符

  • 标识符命名pl/sql元素,包括:常量、光标、异常、关键字、标签、包、保留字、子程序、类型、变量。
  • 标识符是由一个字母后面可以跟更多的字母,数字,美元符号,下划线和数字符号,并且不得超过30个字符。而像连字符(-)、斜线(/)等符号都是不允许使用的。
  • 除了字符串和字符以外,PL/SQL对大小写是不敏感的。
  • 不能使用保留关键字作为标识符。

3、文本

整数:030, 6, -14, 0, +327672E5, 5 * 10**3

字符:\'Z\' , \'%\' , \'7\' , \' \' , \'Hello, world!\'

布尔: TRUE、FALSE和 null

日期: DATE \'1998-12-25\' ; TIMESTAMP \'1997-10-22 13:01:01\' ;

4、注释

单选注释

Select * from emp where empno=7788;--取得员工信息

多行注释

/*……*/来划分

三、PL/SQL代码编写规则

  1. 当定义变量时,建议用v_作为前缀;常量用c_作为前缀 ;游标用_cur作为后缀;当定义例外用e_作为前缀。
  2. PL/sql块中的语句不区分大小写
  3. PL/SQL中可以使用大多数的单行SQL函数:round,upper,to_char,month_between .

以上是关于PL/SQL块与表达式的主要内容,如果未能解决你的问题,请参考以下文章

Python 正则表达式拆分 PL/SQL 指令

PL/SQL 中的正则表达式

PL/SQL 正则表达式不起作用

可以在 PL/SQL 函数中使用正则表达式吗?

(十七)PL/SQL DBMS输出

正则表达式 substr,起始位置位于字符串 PL/SQL 的末尾