oracle的控制语句if和循环语句loop while for
pl/sql的控制结构
if-then if-then-else if-then-elsif-else
案例1:编写一个过程,可以输入一个雇员名,如果该雇员的工资低于2000,就给该雇员工资增加10%
create or replace procedure mypro(spName varchar2) is
v_sal emp.sal%type
begin
select sal into v_sal from emp where ename = spName
if v_sal < then
update emp set sal = sal*1.1 where ename = spName
end if;
end;
案例2 编写一个过程,可以输入一个雇员名,如果该雇员的补助不是0就在原来的基础上加100,如果为0则改为200
create or replace procedure mypro(spName varchar2) is
v_comm emp.comm%type
begin
select comm into v_comm from emp where ename = spName;
if v_comm <> then
update emp set comm = comm+ where ename = spName;
else
update emp set comm = comm+ where ename = spName;
end if;
end;
案例3:编写一个过程,可以输入一个雇员编号人,如果该雇员的职位是president就给他的工资增加1000,如果该雇员
的职位是manager就给他的工资增加500,其他职位的雇员工资增加200.
create or replace procedure mypro(spName number) is
v_job emp.job%type
begin
select job into v_job from emp where empno=spNo;
if v_job='PRESIDENT' then
update emp set sal = sal + where empno = spNo;
elsif v_job = 'MANAGER' then
update emp set sal = sal + where empno = spNo;
else
update emp set sal = sal + where empno = spNo;
end if;
end;
pl/sql循环语句
loop是最简单的循环语句,这种循环语句以loop开头,以end loop结尾,这种循环至少会被执行一次
案例1 现在有一张表,表结构为用户id和用户名
create or replace procedure mypro(spName varchar2) is
v_num number:=;
begin
loop
insert into users values(v_num,spName);
--判断是否要退出循环
exit when v_num=;
v_num:=v_num+;
end loop;
end;
while循环,至少要执行循环体一次,而对于while循环来说,只有条件为true时,才会执行循环语句
create or replace procedure mypro(spName varchar2) is
v_num number:=;
begin
while v_num <= loop
insert into users values(v_num,spName);
v_num:=v_num+;
end loop;
end;
循环语句-for循环
begin
--只能按照1的步长不断增加
for i in reverse .. loop
insert into users values(i,'hh');
end loop;
end;
oracle的控制语句if和循环语句loop while for的更多相关文章
- MySQL与Oracle 差异比较之四条件循环语句
循环语句 编号 类别 ORACLE MYSQL 注释 1 IF语句使用不同 IF iv_weekly_day = 'MON' THEN ii_weekly_day := 'MON';ELS ...
- Oracle中PL/SQL的循环语句
在PL/SQL中可以使用LOOP语句对数据进行循环处理,利用该语句可以循环执行指定的语句序列.常用的LOOP循环语句包含3种形式:基本的LOOP.WHILE...LOOP和FOR...LOOP. LO ...
- 1-23-shell脚本之-if流程控制语句和for循环语句的使用
大纲: 1.逻辑判断 2.if流程控制语句 3.for循环控制语句 ---------------------------------------------- 在开始之前,先了解一下逻辑判断符号 ...
- 『无为则无心』Python基础 — 14、Python流程控制语句(while循环语句)
目录 1.什么是循环结构 2.while循环 (1)while循环的语法 (2)while循环的应用 3.while语句的死循环 4.break和continue 5.while循环嵌套 (1)应用场 ...
- 『无为则无心』Python基础 — 15、Python流程控制语句(for循环语句)
目录 1.for循环语法 2.for循环中的break和continue 3.循环+else结构 (1)while...else (2)while...else退出循环的方式 (3)for...els ...
- oracle中的分支与循环语句
分支语句 if的三种写法一, if 2 < 1 then dbms_output.put_line('条件成立'); end if; 二, if 2 < 1 then dbms_outpu ...
- Oracle PLSQL Demo - 05.WHILE循环[WHILE LOOP]
declare v_sal ; begin ) loop v_sal :; dbms_output.put_line(v_sal); end loop; end;
- oracle学习--循环语句
oracle学习--循环语句 loop循环: create or replace procedure pro_test_loop is i number; begin i:=0; loop i:=i ...
- SQL分支语句与循环语句
分支语句 if then elsif then else end if 举例: set serveroutput on declare num number; begin num:; then dbm ...
随机推荐
- OpenStack的Resize和冷迁移代码解析及改进
原文:http://www.hengtianyun.com/download-show-id-79.html OpenStack的Resize(升级)功能,我们可以改变虚拟机的CPU核数.内存及磁盘大 ...
- Hadoop学习笔记2---配置详解
配置系统是复杂软件必不可少的一部分,而Hadoop配置信息处理是学习Hadoop源代码的一个很好的起点.现在就从Hadoop的配置文件谈起. 一.Hadoop配置格式 Hadoop配置文件格式如下所示 ...
- 【转】Maven实战(八)---模块划分
本博文出自于:http://blog.csdn.net/liutengteng130/article/details/47000217 感谢! 为了防止传递依赖,我们各个模块之间尽量用直接依赖的 ...
- 现代C++作业2 与 围棋homework-06
本文第一部分是现代C++作业2,第二部分是对围棋程序的部分建议,还有一些修改和优化体现在Github里面的代码中. 首先是现代C++作业. 1. 了解Lambda的用法.计算“Hello World! ...
- POJ 2185 Milking Grid(KMP)
Milking Grid Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 4738 Accepted: 1978 Desc ...
- Spring入门(8)-基于Java配置而不是XML
Spring入门(8)-基于Java配置而不是XML 本文介绍如何应用Java配置而不是通过XML配置Spring. 0. 目录 声明一个简单Bean 声明一个复杂Bean 1. 声明一个简单Bean ...
- word2003公式编辑器公式显示不完整问题
在段落里设置行距为:单倍行距.
- HDU 5723 Abandoned country (最小生成树+dfs)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5723 n个村庄m条双向路,从中要选一些路重建使得村庄直接或间接相连且花费最少,这个问题就是很明显的求最 ...
- HQL和Criteria
HQL: public boolean doCreate(Dept vo) throws Exception { return this.sessionFactory.getCurrentSessio ...
- C#学习笔记(五):泛型
认识泛型 泛型使类型参数化,从而实现了算法上的代码重用. 同时由于去掉了转换中装箱和拆箱的操作,使用泛型还可以提高程序的运行速度. 我们先看看C#自带的使用了泛型的类: using System.Co ...