详解Oracle数据库各类控制语句的使用

Oracle数据库各类控制语句的使用是本文我们主要要介绍的内容,包括一些逻辑控制语句、Case when的使用、While的使用以及For的使用等等,接下来我们就开始一一介绍这部分内容,希望能够对您有所帮助。

Oracle 中逻辑控制语句 

If elsif else end if
set serverout on;
declare per_dep_count number;
begin
select count(*) into per_dep_count from emp;
if per_dep_count>0 then
dbms_output.put_line('Big Than 0');
elsif per_dep_count>5 then <span style="font-size:24px;color:#ff0000;"><strong>--elsif not elseif!!!!
</strong></span>        dbms_output.put_line('Big Than 5');
else
dbms_output.put_line('En?');
end if;
end; 

 Case when 的使用的两种方式  :

第一种使用方式

declare per_dep_count number;
begin
select count(*) into per_dep_count from emp;
case per_dep_count
when 1 then
dbms_output.put_line('1');
when 2 then
dbms_output.put_line('2');
else
dbms_output.put_line('else');
end case;
end;

第二种使用方式

declare per_dep_count number;
begin
select count(*) into per_dep_count from emp;
case
when per_dep_count=1 then
dbms_output.put_line('1');
when per_dep_count=2 then
dbms_output.put_line('2');
else
dbms_output.put_line('else');
end case;
end;

While 的使用

declare v_id number:=0;
begin
while v_id<5 loop
v_idv_id:=v_id+1;
dbms_output.put_line(v_id);
end loop;
end;

For的使用 

declare v_id number:=0;
begin
for v_id in 1..5 loop
dbms_output.put_line(v_id);
end loop;
end;

关于Oracle数据库各类控制语句的使用就介绍到这里了,希望本次的介绍能够对您有所收获!

(0)

相关推荐

  • 详解JavaScript中循环控制语句的用法

    JavaScript提供完全控制来处理循环和switch语句.可能有一种情况,当你需要退出一个循环,但未达到其底部.也可能有一种情况,当要跳过的码块的一部分,并直接开始下一个迭代. 为了处理这些情况下,JavaScript提供了break和continue语句.这些语句是用来马上退出任何循环或启动循环的下一次迭代. break 语句: break语句,这是简单地用switch语句介绍,用于提前退出循环,打破封闭的花括号. 例子: 这个例子说明了如何使用break语句同while循环.请注意循环打

  • linux shell流程控制语句实例讲解(if、for、while、case语句实例)

    一.shell条件语句(if用法) if语句结构[if/then/elif/else/fi] 复制代码 代码如下: if 条件测试语句 then action [elif 条件 action else action ] fi 如果对于:条件测试语句不是很清楚,可以参考:linux shell 逻辑运算符.逻辑表达式详解shell命令,可以按照分号分割,也可以按照换行符分割.如果想一行写入多个命令,可以通过"';"分割.如: 复制代码 代码如下: [chengmo@centos5 ~]$

  • Flash中常用到的ActionScript控制语句用法

    很多朋友经常询问关于Flash的ActionScript脚本语句的用法,有些很简单的命令就能实现某种功能,我就从这里,那里,东拼西凑的找了一写,.现在我就把一些Flash的常用Action语句的基本用法讲解一下. 1.Goto:跳到一个指定的帧(Frame) Scene: 指定 Scene Frame:Number,Label,Expression,Next Frame,Previous Frame 可以选择 Frame 的编号,标号,通过表达式,下一帧,前一帧 Expression: 定义表达

  • C#编程自学之流程控制语句

    在前面的文章中我们不难看出来,我们程序的执行顺序是从上到下顺序执行的,那么有时候我们需要程序在某个条件成立时,执行指定的代码片段,那么怎么样来控制这样流程呢?这个就是我们今天这篇文章所需要讨论的.那么开始吧! 一.if esle 语句 1.关系型运算符 说到分支语句必定会牵扯到条件,例如当满足一个条件的时候去执行指定的代码段,那么如何构建条件?这个时候我们就需要先了解一下运算符中的<关系型运算符>!请看下表: 看完表格后我们来介绍下什么是关系型运算符,关系型运算符就是对我们程序中的数据进行比较

  • shell脚本中case条件控制语句的一个bug分析

    在shell脚本中,发现case语句的一个问题.就是指定小写字母[a-z]和大写字母[A-Z]的这种方法不管用了. 出现如下情况: 复制代码 代码如下: [root@station1 ~]# cat case.sh#!/bin/bashwhile :doecho -n "input a letter: "read varcase "$var" in  [a-z]) echo "Lowercase letter";;  [A-Z]) echo &q

  • 详解Oracle数据库各类控制语句的使用

    Oracle数据库各类控制语句的使用是本文我们主要要介绍的内容,包括一些逻辑控制语句.Case when的使用.While的使用以及For的使用等等,接下来我们就开始一一介绍这部分内容,希望能够对您有所帮助. Oracle 中逻辑控制语句  If elsif else end if set serverout on; declare per_dep_count number; begin select count(*) into per_dep_count from emp; if per_de

  • 详解Oracle数据库中自带的所有表结构(sql代码)

    目录 一.tb_emp(员工表) 1.建表 2.导入数据 3.查表 二.tb_dept(部门表) 1.建表 2.导入数据 3.查表 三.tb_bonus(奖金表) 1.建表 2.导入数据 3.查表 四.tb_salgrade(工资等级表) 1.建表 2.导入数据 3.查表 五.tb_users(用户表) 1.建表 2.导入数据 3.查表 六.tb_saldetail(工资详细表) 1.建表 2.导入数据 3.查表 一.tb_emp(员工表) 1.建表 CREATE TABLE "TEST&quo

  • 详解oracle中通过触发器记录每个语句影响总行数

    详解oracle中通过触发器记录每个语句影响总行数 需求产生: 业务系统中,有一步"抽数"流程,就是把一些数据从其它服务器同步到本库的目标表.这个过程有可能 多人同时抽数,互相影响.有测试人员反应,原来抽过的数,偶尔就无缘无故的找不到了,有时又会出来重复行.这个问题产生肯定是抽数逻辑问题以及并行的问题了!但他们提了一个简单的需求:想知道什么时候数据被删除了,什么时候插入了,我需要监控"表的每一次变更"! 技术选择: 第一就想到触发器,这样能在不涉及业务系统的代码情况

  • 详解Oracle在out参数中访问光标

    详解Oracle在out参数中访问光标 一 概念 申明包结构 包头:负责申明 包体:负责实现 二 需求 查询某个部门中所有员工的所有信息 三 包头 CREATE OR REPLACE PACKAGE MYPACKAGE AS type empcursor isref cursor; procedure queryEmplist(dno in number,emplist out empcursor); END MYPACKAGE; 四 包体 包体需要实现包头中声明的所有方法 CREATE OR

  • 详解java中各类锁的机制

    目录 前言 1. 乐观锁与悲观锁 2. 公平锁与非公平锁 3. 可重入锁 4. 读写锁(共享锁与独占锁) 6. 自旋锁 7. 无锁 / 偏向锁 / 轻量级锁 / 重量级锁 前言 总结java常见的锁 区分各个锁机制以及如何使用 使用方法 锁名 考察线程是否要锁住同步资源 乐观锁和悲观锁 锁住同步资源后,要不要阻塞 不阻塞可以使用自旋锁 一个线程多个流程获取同一把锁 可重入锁 多个线程公用一把锁 读写锁(写的共享锁) 多个线程竞争要不要排队 公平锁与非公平锁 1. 乐观锁与悲观锁 悲观锁:不能同时

  • 详解Oracle调试存储过程

    详解Oracle调试存储过程 一 调试关键步骤 1.在要调试的存储过程右键,选择编辑以进行调试,截图如下: 2.点击小瓢虫,弹出调试窗口,截图如下: 3.输入7839员工编号,点击确认,进行调试,截图如下: 4.该截图说明权限不够,需要添加scott用户的权限. 5.增加权限语句如下: SQL> show user USER 为"SCOTT" SQL> connect system 输入口令: 已连接. SQL> show user USER 为"SYSTE

  • 详解JDBC数据库链接及相关方法的封装

    详解JDBC数据库链接及相关方法的封装 使用的是MySQL数据库,首先导入驱动类,然后根据数据库URL和用户名密码获得数据的链接.由于使用的是MySQL数据库,它的URL一般为,jdbc:mysql://主机地址:端口号/库名. 下面是封装的具体类,用到了泛型和反射,不过还存在些问题,就是对使用的泛型对象有些限制,只能用于泛型类对象属性名与数据库表中列名相同的对象,而且初始化对象的方法必须为set+属性名的方法.本来想通过返回值类型,参数列表来确定该属性初始化方法的,然而可能是目前学到的还是太少

  • 详解Oracle游标的简易用法

    下面看下Oracle游标的简易用法,具体代码如下所示: create or replace procedure NW_DelYW(iOPERATION_ID number, sUserID varchar2) is sCurDJBH yw_operation_link.djbh%type; cursor table_yw(ywid yw_operation.id%type) is select * from yw_operation_link t1 where t1.operation_id =

  • DJango的创建和使用详解(默认数据库sqlite3)

    1.安装虚拟环境 虚拟环境是真实python环境的复制版本. 安装虚拟环境的命令: 1)sudo pip install virtualenv #安装虚拟环境 2)sudo pip install virtualenvwrapper #安装虚拟环境扩展包 3)编辑家目录下面的.bashrc文件,添加下面两行. export WORKON_HOME=$HOME/.virtualenvs source /usr/local/bin/virtualenvwrapper.sh 4)使用source .b

  • 详解MySQL数据库之触发器

    1 引言 本文是对MySQL中触发器的总结,从触发器概念出发,结合实例对创建触发器.使用触发器.删除触发器进行介绍. 2 触发器简介 MySQL触发器和存储过程一样,都是嵌入到MySQL的一段程序.触发器是由事件来触发某个操作,这些事件包括INSERT.UPDATE.DELETE.如果定义了触发器,当数据库执行这些语句的时候就会激活触发器执行相应的操作,触发程序是与表有关的命令数据库对象,当表上出现特定事件,将激活该对象. 触发器是一个特殊的存储过程,不同的是,执行存储过程要使用call语句来调

随机推荐