Oracle流程控制语句

简介: 1.选择语句 1.1 IF...THEN...END IF语句 DECLARE MY_AGE INT; IF MY_AGE IS NULL THEN DBMS_OUTPUT.put_line('AGE IS NULL'); END IF;    1.2 IF...THEN ELSIF THEN....ELSE THEN... ENDIF语句,这里需要注意的是ELSIF这个,JAVA里面的写法就是 else if  这里是ELSIF,IF前面不能有空格。

1.选择语句

1.1 IF...THEN...END IF语句

DECLARE MY_AGE INT;
IF MY_AGE IS NULL THEN 
     DBMS_OUTPUT.put_line('AGE IS NULL'); 
END IF;

  

1.2 IF...THEN ELSIF THEN....ELSE THEN... ENDIF语句,这里需要注意的是ELSIF这个,JAVA里面的写法就是 else if  这里是ELSIF,IF前面不能有空格。

IF AGE <= 6 AND AGE > 0 THEN
    DBMS_OUTPUT.put_line('CHILD');
  ELSIF AGE <= 17 AND AGE > 6 THEN
    DBMS_OUTPUT.put_line('TEENAGER'); 
  ELSIF AGE <= 40 AND AGE > 17 THEN
    DBMS_OUTPUT.put_line('YOUTH'); 
  ELSIF AGE <= 65 AND AGE > 40 THEN
    DBMS_OUTPUT.put_line('Middle-aged'); 
  ELSIF AGE > 65 AND AGE<= 150 THEN
    DBMS_OUTPUT.put_line('OLDER'); 
  ELSE 
    DBMS_OUTPUT.put_line('YOU AGE IS OUT OF SPACE'); 
  END IF;

1.3.CASE 语句

CASE AGE
    WHEN 1 THEN  DBMS_OUTPUT.put_line('BABY');
    WHEN 15 THEN  DBMS_OUTPUT.put_line('TEENAGER');
    WHEN 25 THEN  DBMS_OUTPUT.put_line('ADULT');
    ELSE DBMS_OUTPUT.put_line('OLDER');
   END CASE;
   END;

2.循环语句

2.1 LOOP 语句

DECLARE RESULT NUMBER:=0;
NUM1 NUMBER:=1;
NUM2 NUMBER:=100;


 LOOP
    RESULT:=RESULT+NUM1;
    NUM1:=NUM1+1;
    EXIT WHEN NUM1>NUM2;
  END LOOP;
  
  DBMS_OUTPUT.put_line('LOOP RESUT IS:'||RESULT);

2.2 WHILE语句

 WHILE NUM1<=NUM2 LOOP
    RESULT:=RESULT+NUM1;
    NUM1:=NUM1+1;
  END LOOP;
  DBMS_OUTPUT.put_line(RESULT);

2.3 FOR语句

FOR J IN REVERSE NUM1..NUM2 LOOP
    RESULT:=RESULT+J;
    DBMS_OUTPUT.put_line(J);
  END LOOP;
  DBMS_OUTPUT.put_line(RESULT);

  

目录
相关文章
|
4月前
|
存储 Oracle 关系型数据库
Oracle数据库的应用场景有哪些?
【10月更文挑战第15天】Oracle数据库的应用场景有哪些?
311 64
|
2月前
|
存储 Oracle 关系型数据库
数据库数据恢复—ORACLE常见故障的数据恢复方案
Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。
140 11
|
3月前
|
Oracle 关系型数据库 数据库
Oracle数据恢复—Oracle数据库文件有坏快损坏的数据恢复案例
一台Oracle数据库打开报错,报错信息: “system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。管理员联系我们数据恢复中心寻求帮助,并提供了Oracle_Home目录的所有文件。用户方要求恢复zxfg用户下的数据。 由于数据库没有备份,无法通过备份去恢复数据库。
|
3月前
|
存储 Oracle 关系型数据库
oracle数据恢复—Oracle数据库文件大小变为0kb的数据恢复案例
存储掉盘超过上限,lun无法识别。管理员重组存储的位图信息并导出lun,发现linux操作系统上部署的oracle数据库中有上百个数据文件的大小变为0kb。数据库的大小缩水了80%以上。 取出&并分析oracle数据库的控制文件。重组存储位图信息,重新导出控制文件中记录的数据文件,发现这些文件的大小依然为0kb。
|
3月前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
70 7
|
2月前
|
存储 Oracle 关系型数据库
服务器数据恢复—华为S5300存储Oracle数据库恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障: RAID5阵列中1块硬盘出现故障离线,热备盘自动激活开始同步数据,在同步数据的过程中又一块硬盘离线,RAID5阵列瘫痪,上层LUN无法使用。
|
3月前
|
Oracle 关系型数据库 数据库
oracle数据库技巧
【10月更文挑战第25天】oracle数据库技巧
46 6
|
3月前
|
存储 Oracle 关系型数据库
Oracle数据库优化策略
【10月更文挑战第25天】Oracle数据库优化策略
45 5
|
4月前
|
存储 Oracle 关系型数据库
数据库数据恢复—Oracle ASM磁盘组故障数据恢复案例
Oracle数据库数据恢复环境&故障: Oracle ASM磁盘组由4块磁盘组成。Oracle ASM磁盘组掉线 ,ASM实例不能mount。 Oracle数据库故障分析&恢复方案: 数据库数据恢复工程师对组成ASM磁盘组的磁盘进行分析。对ASM元数据进行分析发现ASM存储元数据损坏,导致磁盘组无法挂载。
|
4月前
|
监控 Oracle 关系型数据库
Oracle数据库性能优化
【10月更文挑战第16天】Oracle数据库性能优化是
59 1

热门文章

最新文章

推荐镜像

更多