pl/sql编程中的流程控制语句主要有if语句,case语句以及循环语句

下面将逐个介绍这几个语句

1.if语句

-- 根据员工工资来判断奖金的多少,工资在5000以上的奖金500,工资在3000-5000的奖金300,其他的工资100;
declarev_emp emp%rowtype;beginselect * into v_emp from emp where empno=7369;if v_emp.sal>=5000 thenupdate emp set comm=nvl(comm,0)+500  where empno=v_emp.empno ;elsif v_emp.sal<5000 and v_emp.sal>=3000 thenupdate emp set comm=nvl(comm,0)+300 where empno=v_emp.empno ;elseupdate emp set comm=nvl(comm,0)+100  where empno=v_emp.empno ;end if;
end;

2.case语句

-- 根据部门的编号判断部门是哪儿里
select deptno,case deptnowhen 10 then '研发部'when 20 then '市场部'when 30 then '人事部'end 部门
from dept;

3.循环语句

3.1 loop循环

-- loop循环是最简单的循环
declarei number:=1;beginloop
--     执行循环体dbms_output.put_line('hello'||i);
--     退出循环的条件exit when i>=5;i:=i+1;end loop;
end;

3.2 while循环

declarei number(2):=1;begin
--   while循环,先执行条件,如果条件满足,就执行循环体,否则就不执行while i<=5 loopdbms_output.put_line('hello'||i);
--       i++;i:=i+1;end loop;
end;

3.3 for循环

declarebegin
--   相当于java中的for循环
--   for 递增的变量 in 下限..上限 loop
--       循环体
--   end loop;for i in 1..10 loopdbms_output.put_line('hello'||i);end loop;
end;

3.4 标号和GOTO

-- GOTO label
--   <<label>>
declarebegin
--   当i=5时,跳出循环for i in 1..10 loopdbms_output.put_line('hello'||i);if i=5 thenGOTO label;end if;end loop;<<label>>dbms_output.put_line('world');
end;

转载于:https://www.cnblogs.com/Zs-book1/p/11228021.html

oracle学习笔记5:pl/sql流程控制语句相关推荐

  1. PL/SQL流程控制语句

    介绍PL/SQL的流程控制语句, 包括如下三类: l 控制语句: IF 语句 l 循环语句: LOOP语句, EXIT语句 l 顺序语句: GOTO语句, NULL语句 1 条件语句 IF <布 ...

  2. oracle学习总结2(pl/sql 游标 异常的处理 存储过程和函数 包 触发器)

    pl/sql的学习 给sql添加了逻辑判断与流程控制的功能 语法: declare begin exception end; 运算符 重要的就是赋值运算符了:=        连接  ||       ...

  3. JAVA学习笔记(11){流程控制语句}

    目录 顺序结构 分支结构 if语句 结构一练习: 结构二练习: switch语句 练习: switch的小知识点 练习: 循环结构 for循环 练习: while循环 练习: do while循环 f ...

  4. JavaScript学习笔记(二)--流程控制语句

    JS条件语句 条件语句是基于不同的条件来执行不同的动作. 在JS中,有以下几种条件语句: if 语句 只有当指定条件为true或者可以被转换为true时,使用该语句来执行代码. if-else 语句 ...

  5. oracle update单引号,Oracle学习笔记:update的字段中包括单引号

    平时update的时候直接更改字段内的值,例如: update table_temp set name = 'Hider' where id = 100; 但更新后的值中包括单引号,则不能按以上方式进 ...

  6. Oracle学习笔记---(一)

    Oracle学习笔记---(一) 一 1.Oracle简介     Oracle是以高级结构化查询语言(SQL)为基础的大型关系数据库:是一个对象关系数据库管理系统(ORDBMS).它提供了关系数据库 ...

  7. Oracle学习笔记 字符集概述

    Oracle 学习笔记 字符集概述 这节课开始讲oracle里面的字符集 偏重于原理和简单的一些判断以及实现 字符集它涉及到很多的东西 比如建库和操作系统环境 这节课把字符集的原理性的东西以及常见的操 ...

  8. oracle学习笔记 参数文件及数据库的启动和关闭

    oracle学习笔记 参数文件及数据库的启动和关闭 我们这节课把oracle的参数文件以及oracle的启动关闭讲一下 一)参数文件作用 先看oracle的参数文件 它由来已久了 我们知道oracle ...

  9. oracle:oracle学习笔记(四)循环、光标、异常、瀑布模型

    oracle学习笔记:循环.光标.异常 文章目录 打印Hello World 定义基本变量 引用型变量(单行)` my_name emp.ename%type ` 记录型变量(多行) `emp_rec ...

最新文章

  1. 03.LoT.UI 前后台通用框架分解系列之——多样的表格
  2. Spring Framework 5.2 正式发布,14项新特性一览
  3. JspServlet之Cookie
  4. luogu P2679——子串
  5. df的缺失值处理 df.isnull()和df.dropna()
  6. 心得9--jsp设计模版
  7. mysql查询会话池_用户会话,数据控件和AM池
  8. javascript 布尔_JavaScript布尔说明-如何在JavaScript中使用布尔
  9. java知识体系 servlet_03-Servlet 体系结构知识梳理
  10. MySQL中根据A表画更新B表
  11. 什么才是Web前端开发的必备核心技能?
  12. 主键和外键举例_数据库-主键和外键及其约束
  13. 中国风歌曲介绍及推荐
  14. python 经纬度画北京地图_python 画经纬度的函数drawparallel
  15. JS字符(字母)与ASCII码转换
  16. 哪款蓝牙耳机性价比高?双十一蓝牙耳机推荐
  17. 如何玩转物联网开发板
  18. VB6 简单实现 支付宝二维码扫马支付
  19. 如何使用ssh连接windows?
  20. G.E.M.邓紫棋《句号》MV首播!

热门文章

  1. 生活中人人都是主角,也都不是主角
  2. JS调用后台带参数的方法
  3. Linxu嵌入式汇编语言
  4. 比较字符串a和b的大小
  5. stm32 PWM输出学习
  6. MFC模态窗口与非模态窗口
  7. DVRRDK, EZSDK和DVSDK这三者有什么区别
  8. pat天梯赛L1-054. 福到了
  9. java获取注解信息_java 自定义注解,获取注解信息
  10. Google Project Zero挖洞经验整理