1. if...then语句

  if <condition_expression> then

    plsql_sentence;

  end if;  

declare
-- Local variables here
v_name1 varchar2(50);
v_name2 varchar2(50);
begin
-- Test statements here
v_name1 := 'East';
v_name2 := 'xiaoke';
if length(v_name1) < length(v_name2) then
dbms_output.put_line('字符串['||v_name1||']的长度比字符串['||v_name2||']小!');
end if;
end;

2. if...then...else语句
   if <condition_expression> then

    plsql_sentence1;

  else

    plsql_sentence2;

  end if;

declare
-- Local variables here
v_age int := 55;
begin
-- Test statements here
if v_age > 56 then
dbms_output.put_line('您可以申请退休了!');
else
dbms_output.put_line('您小于56岁,不可以申请退休!');
end if;
end;

3. if...then...elsif语句
  if <condition_expression1> then

    plsql_sentence_1;

  elsif <condition_expression2> then

    plsql_sentence_2;

  else

    plsql_sentence_n;

  end if;

declare
-- Local variables here
v_month int := 3;
begin
-- Test statements here
if v_month <= 3 then
dbms_output.put_line('这是春季!');
elsif v_month <= 6 then
dbms_output.put_line('这是夏季!');
elsif v_month <= 9 then
dbms_output.put_line('这是秋季!');
elsif v_month <= 12 then
dbms_output.put_line('这是冬季!');
else
dbms_output.put_line('您输入的月份不合法!');
end if;
end;

4. case语句
  case <selector>

    when <expression_1> then plsql_sentence_1;

    when <expression_2> then plsql_sentence_2;

    ...

    when <expression_n> then plsql_sentence_n;

    [else plsql_sentence;]

  end case;

declare
-- Local variables here
v_season int := 3;
v_autoInfo varchar2(50);
begin
-- Test statements here
case v_season
when 1 then
v_autoInfo := v_season || '季度包括1,2,3月份';
when 2 then
v_autoInfo := v_season || '季度包括4,5,6月份';
when 3 then
v_autoInfo := v_season || '季度包括7,8,9月份';
when 4 then
v_autoInfo := v_season || '季度包括10,11,12月份';
else
v_autoInfo := v_season || '季度不合法';
end case;
dbms_output.put_line(v_autoInfo);
end;

【PL/SQL编程】条件语句的更多相关文章

  1. PL/SQL编程重点语句输出整理

    create or replace procedure pr_mytest is v_test number() :=; v_char varchar2():='数据库'; c_changl cons ...

  2. ORACLE PL/SQL编程详解

    ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ...

  3. pl/sql编程

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  4. ORACLE PL/SQL编程之八:把触发器说透

    原文:ORACLE PL/SQL编程之八:把触发器说透 ORACLE PL/SQL编程之八: 把触发器说透 大家一定要评论呀,感谢!光发表就花了我将近一个下午. 本篇主要内容如下: 8.1 触发器类型 ...

  5. [推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼、百战不殆)

    原文:[推荐]ORACLE PL/SQL编程之五:异常错误处理(知已知彼.百战不殆) [推荐]ORACLE PL/SQL编程之五: 异常错误处理(知已知彼.百战不殆) 继上三篇:ORACLE PL/S ...

  6. [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)

    原文:[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程详解之三: PL/SQL流程控制语句(不给规则,不成方圆) ...

  7. [推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到)

    原文:[推荐]ORACLE PL/SQL编程之四:把游标说透(不怕做不到,只怕想不到) [推荐]ORACLE PL/SQL编程之四: 把游标说透(不怕做不到,只怕想不到) 继上两篇:ORACLE PL ...

  8. 【强烈强烈推荐】《ORACLE PL/SQL编程详解》全原创(共八篇)--系列文章导航

    原文:[强烈强烈推荐]<ORACLE PL/SQL编程详解>全原创(共八篇)--系列文章导航 <ORACLE PL/SQL编程详解> 系列文章目录导航 ——通过知识共享树立个人 ...

  9. [推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下)

    原文:[推荐]ORACLE PL/SQL编程详解之一:PL/SQL 程序设计简介(千里之行,始于足下) [推荐]ORACLE PL/SQL编程详解之一: PL/SQL 程序设计简介(千里之行,始于足下 ...

  10. PL/SQL 编程(一)基础,变量,分支,循环,异常

    SQL和PL/SQL: SQL 结构化查询语言(Structural Query Language),是用来访问和操作关系型数据库的一种标准通用语言,属于第四代语言(4GL).可以方便的调用相应语句来 ...

随机推荐

  1. RabbitMQ学习之(三)_Centos6下RabbitMQ PHP扩展的安装

    安装rabbitmq-c依赖包 yum install libtool autoconf 下载安装rabbitmq-c wget https://github.com/alanxz/rabbitmq- ...

  2. 20145109 《Java程序设计》第九周学习总结

    JDBC 1 . DriverManager Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 2 . ...

  3. SpringMVC对于传入多个对象参数遇到的问题

    最近遇到一个问题,一个添加接口,需要添加三个对象,而且这三个对象里面的属性名很多都是一样的,本来是拿三个对象直接接收值,但是因为很多属性名都一样,所以接收不到值.百度也有的说把这三个对象的参数重命名然 ...

  4. 浅谈web应用的负载均衡、集群、高可用(HA)解决方案

    http://aokunsang.iteye.com/blog/2053719   声明:以下仅为个人的一些总结和随写,如有不对之处,还请看到的网友指出,以免误导. (详细的配置方案请google,这 ...

  5. c#结构体和字节流之间的相互转换

    结构体转byte数组 1  首先要明白 ,是 在那个命名空间下  System.Runtime.InteropServices; 2  首先得到结构体的大小 2  开辟相应的内存空间 3  将结构体填 ...

  6. SpringBoot 集成Netty实现UDP Server

    注:ApplicationRunner 接口是在容器启动成功后的最后一步回调(类似开机自启动). UDPServer package com.vmware.vCenterEvent.netty; im ...

  7. 解题报告:hdu1257 LIS裸题

    2017-09-02 17:28:44 writer:pprp 那个裸题练练手,讲解在之前的博客中提到了 代码如下: /* @theme:hdu1257 @writer:pprp @begin:17: ...

  8. STL map用法总结(multimap)

    2017-08-19 10:58:52 writer;pprp #include <map> #include <string> #include <iostream&g ...

  9. LA 5135 井下矿工(点—双连通分量模板题)

    https://vjudge.net/problem/UVALive-5135 题意:在一个无向图上选择尽量少的点涂黑,使得任意删除一个点后,每个连通分量至少有一个黑点. 思路: 首先dfs遍历求出割 ...

  10. 使用Sandcastle 基于代码注释生成接口文档

    一. 工具下载: 1. Sandcastle:Sandcastle是微软官方的文档生成工具,下载地址:http://www.codeplex.com/Sandcastle 2. SHFBGuidedI ...