20、PL/SQL 块

作者: 小母牛不生产奶 | 来源:发表于2018-10-22 23:43 被阅读0次

PL/SQL 块

是在 SQL 语言之上发展起来的一种应用,可以集中的处理各种复杂的 SQL 操作。组成: 


DECLARE:  

声明部分 

BEGIN  

编写主题

EXCEPTION 

捕获异常

END ;


图一 图二

Loop 循环(do…while)

PL/SQL 之中也包含了:循环、分支等条件控制语句

Loop 循环(do…while) 格式:

 LOOP   循环的语句; 

 EXITWHEN终止条件; 

 循环条件必须更改; 

END LOOP ;


循环输出 1~10。

 DECLARE cou NUMBER ;

 BEGIN --必须给一个初始值

cou := 1 ; 

LOOP 

 DBMS_OUTPUT.put_line('cou = '||cou) ;

 EXIT WHEN cou>10 ;

  cou:= cou + 1 ; 

END LOOP ;

END ; -- 此循环是先执行一次之后再进行判断


while 循环 

格式:

 while(判断循环的条件)

loop  循环的语句; 

 循环条件的改变;

 Endloop ;

使用此语句修改上面的程序:

 DECLARE cou NUMBER ;

 BEGIN 

-- 必须给一个初始值

 cou:= 1 ; 

WHILE(cou<10)

LOOP  DBMS_OUTPUT.put_line('cou = '||cou) ;

  cou:= cou + 1 ; 

END LOOP ;

END ; / 此语句,是先判断,之后如果条件满足则执行,与 while 循环类似。


for 循环 

格式:

 FOR变量名称 in 变量的初始值..结束值

LOOP  循环语句;

END LOOP ;


DECLARE cou NUMBER ;

BEGIN 

FOR cou IN 1..10

LOOP  DBMS_OUTPUT.put_line('cou = '||cou) ;

END LOOP ;

END ;


IF 语句 

 条件判断格式:

 IF条件THEN  

满足条件时,执行此语句 

END IF ;


DECLARE cou NUMBER ;

 BEGIN cou := 11 ; 

IF cou>10 THEN 

 DBMS_OUTPUT.put_line('cou = '||cou) ; 

END IF ;

END ;


IF…ELSE 语句 

 如果 IF 满足了,则执行,否则执行ELSE

DECLARE cou NUMBER ;

BEGIN cou := 1 ; 

IF cou>10 THEN 

DBMS_OUTPUT.put_line('cou = '||cou) ; 

ELSE  

DBMS_OUTPUT.put_line('条件不满足') ; 

END IF ;

END ;


IF…ELSE…IF…ELSE 语句 

DECLARE 

cou NUMBER ;

BEGIN cou := 1 ;

 IFcou>10 THEN 

 DBMS_OUTPUT.put_line('cou = '||cou) ;

 ELSIF cou<5 THEN  

DBMS_OUTPUT.put_line('值小于5') ;

 ELSE  DBMS_OUTPUT.put_line('条件不满足') ;

 ENDIF ; END ;


GOTO 语句

无条件跳转语句

 DECLARE eno emp.empno%TYPE ;

 salemp.sal%TYPE ;

BEGIN

 eno:= &en ;

 SELECT sal INTO sal FROM emp WHERE empno=eno;

  IFsal>3500 THEN  

goto po1 ;

 ELSIF

sal>2000 THEN 

 gotopo2 ; 

ELSE  goto po3 ; 

END IF ; 

<>  DBMS_OUTPUT.put_line('高工资。。。') ;

 <>   DBMS_OUTPUT.put_line('中等工资。。') ;

 <>   DBMS_OUTPUT.put_line('底工资。。。') ;

END ;


相关文章

  • 20、PL/SQL 块

    PL/SQL 块 是在 SQL 语言之上发展起来的一种应用,可以集中的处理各种复杂的 SQL 操作。组成: DEC...

  • PL/SQL块

    1.简介 Oracle PL/SQL语言(Procedural Language/SQL)是结合了结构化查询与Or...

  • PL/SQL块练习

    1、自动以输入任意员工编号,输出该员工编号,输出该员工变号、姓名、工资、部门、所在地 2、自定义输入任意员工编号;...

  • PL/SQL程序块

    最近接触到oracle的pl/sql程序块的书写,对pl/sql的语法做一些总结。它是可扩展性的SQL语言,将变量...

  • 子程序的开发:函数

    子程序是指被命名的PL/SQL块,这种块可以携带参数,可以在不同程序中多次调用,PL/SQL有两种类型的子程序:函...

  • PL/SQL

    1.什么是PL/SQL PL/SQL(Procedure Language/SQL)PL/SQL是Oracle对s...

  • PLSQL(一)

    PL/SQL是一种块结构的语言,这意味着PL/SQL程序被划分和编写代码的逻辑块。每块由三个子部分组成: 例子: ...

  • 四、PL/SQL语言

    PL/SQL是一种块结构的语言,这意味着PL/SQL程序被划分和编写代码的逻辑块。每块由三个子部分组成 4.1语法...

  • JAVA学习笔记(PL/SQL)

    1.1什么是PL/SQL PL/SQL(ProceduralLanguage/SQL)是Oracle在标准SQL的...

  • oracle工具PL/SQL快速入门1简介

    什么是PL/SQL? PL/SQL是Oracle中使用的结构化查询语言(SQL)的扩展。 与SQL不同,PL/SQ...

网友评论

    本文标题:20、PL/SQL 块

    本文链接:https://www.haomeiwen.com/subject/hvonzftx.html