数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

详细讲述PLSQL的书写及语法


发布日期:2021年11月11日
 
详细讲述PLSQL的书写及语法

摘要

//简要说明该文档内容

SQL是用来访问关系型数据库一种通用语言其执行特点是非过程化即不用指明执行的具体方法和途径而是简单的调用相应语句来直接取得结果即可PL/SQL是一种过程化语言因此可以用来实现比较复杂的业务逻辑而本篇文章主要讲述PLSQL的书写及语法

内容

//可自行增加小分类

PLSQL语法

程序结构

PL/SQL程序都是以块(block)为基本单位整个PL/SQL块分三部分声明部分(用declare开头)执行部分(以 begin开头)和异常处理部分(以exception开头)其中执行部分是必须的其他两个部分可选无论PL/SQL程序段的代码量有多大其基本结构就是由这三部分组成而且每条语句均由分号隔开

/*声明部分以declare开头*/

DECLARE

declare statement

/*执行部分以begin开头以end结束*/

BEGIN

execute statement

/*异常处理部分以exception开始*/

EXCEPTION

WHEN exceptioncase THEN

Exception handle

END;

例子

/*声明部分以declare开头*/

DECLARE

v_job NUMBER();

/*执行部分以begin开头*/

BEGIN

DELETE FROM employee;

INSERT INTO employee

(depno job

)

VALUES (

);

SELECT job

INTO v_job

FROM employee

WHERE depno = ;

dbms_outputPUT_LINE(v_job);

/*异常处理部分以exception开始*/

EXCEPTION

WHEN no_data_found THEN

dbms_outputPUT_LINE(No data);

END;

执行结果

数据类型

PL/SQL主要用于数据库编程所以其所有数据类型跟oracle数据库里的字段类型是一一对应的大体分为数字型布尔型字符型和日期型

控制结构

PL/SQL程序段中有三种程序结构条件结构循环结构和顺序结构

a)条件结构


IF condition THEN

statement

ELSEIF conditonTHEN

statement

ELSE

statementelse

END IF;

b)循环结构

三种循环结构

简单循环(也称作无限循环)

LOOP

Loopstatement

END LOOP;

WHILE 循环

WHILE condition LOOP

loopstatement

END LOOP;

数字FOR循环

FOR variable IN low_bound upper_bound

LOOP

loopstatement

END LOOP;

通常如果你总是希望循环主体执行至少一次那么你就应当使用一个简单循环如果你希望在第一次运行循环主体之前检查该条件则应使用 WHILE 循环当你计划通过IN子句中指定的每个值(整数或记录)进行迭代时则应当使用FOR循环

c)顺序结构

实际就是goto的运用不过从程序控制的角度来看尽量少用goto可以使得程序结构更加的清晰

上一篇:Oracle导出SQL脚本的spool实现

下一篇:RedHatLinux AS3 U2 安装 oracle9204