Oracle基础 PL-SQL编程基础(2) 分支结构
一、分支结构
1、if语句
语法:
IF <布尔表达式> THEN
PL/SQL和SQL语句
END IF;
示例:
DECLARE
v_count NUMBER := &n;
BEGIN
IF v_count > 0 THEN
DBMS_OUTPUT.put_line('正数');
END IF;
END;
判断是否为正整数!
2、if...else...
语法
IF <布尔表达式> THEN
PL/SQL 和 SQL 语句
ELSE
其他语句
END IF;
示例:
DECLARE
v_count NUMBER := &n;
BEGIN
IF v_count > 0 THEN
DBMS_OUTPUT.put_line('正数');
ELSE
DBMS_OUTPUT.put_line('负数');
END IF;
END;
判断是否为正数或者负数!
3、多重if...else...结构
语法:
IF <布尔表达式> THEN
PL/SQL 和 SQL 语句
ELSIF <其他布尔表达式> THEN
PL/SQL 和 SQL 语句
ELSIF <其他布尔表达式> THEN
PL/SQL 和 SQL 语句
ELSE
PL/SQL 和 SQL 语句
END IF;
示例:
DECLARE
v_count NUMBER := &n;
BEGIN
IF v_count > 0 THEN
DBMS_OUTPUT.put_line('正数');
ELSIF v_count < 0 THEN
DBMS_OUTPUT.put_line('负数');
ELSE
DBMS_OUTPUT.put_line('零');
END IF;
END;
4、CASE语句语法:
格式一:
CASE 条件表达式
WHEN 条件表达式结果1 THEN
语句段1
WHEN 条件表达式结果2 THEN
语句段
......
WHEN 条件表达式结果n THEN
语句段n
[ELSE 语句段]
END CASE;
示例:根据输入1-7显示星期
DECLARE
v_week NUMBER := &S;
BEGIN
CASE v_week
WHEN 1 THEN
DBMS_OUTPUT.PUT_LINE('星期一');
WHEN 2 THEN
DBMS_OUTPUT.PUT_LINE('星期二');
WHEN 3 THEN
DBMS_OUTPUT.PUT_LINE('星期三');
WHEN 4 THEN
DBMS_OUTPUT.PUT_LINE('星期四');
WHEN 5 THEN
DBMS_OUTPUT.PUT_LINE('星期五');
WHEN 6 THEN
DBMS_OUTPUT.PUT_LINE('星期六');
WHEN 7 THEN
DBMS_OUTPUT.PUT_LINE('星期日');
ELSE
DBMS_OUTPUT.PUT_LINE('输入错误');
END CASE;
END;
注意: 一般用于等值判断的情况。
格式二:
CASE
WHEN 条件表达式1 THEN
语句段1
WHEN 条件表达式2 THEN
语句段
......
WHEN 条件表达式n THEN
语句段n
[ELSE 语句段]
END CASE;
示例:根据分数输出A,B,C,D,E
DECLARE
V_SCORE NUMBER := &N;
BEGIN
CASE
WHEN V_SCORE >= 90 THEN
DBMS_OUTPUT.PUT_LINE('A');
WHEN V_SCORE >= 80 THEN
DBMS_OUTPUT.PUT_LINE('B');
WHEN V_SCORE >= 70 THEN
DBMS_OUTPUT.PUT_LINE('C');
WHEN V_SCORE >= 60 THEN
DBMS_OUTPUT.PUT_LINE('D');
ELSE
DBMS_OUTPUT.PUT_LINE('E');
END CASE;
END;
注意:一般用于区间判断的情况。
Oracle基础 PL-SQL编程基础(2) 分支结构的更多相关文章
- Oracle数据库编程:PL/SQL编程基础
2.PL/SQL编程基础: PL/SQL块: declare 定义部分 begin 执行部分 exception 异 ...
- 【PL/SQL编程基础】
[PL/SQL编程基础]语法: declare 声明部分,例如定义变量.常量.游标 begin 程序编写,SQL语句 exception 处理异常 end: / 正斜杠表示执行程序快范例 -- Cre ...
- Oracle Pl/SQL编程基础
Pl/SQL简介 提高应用程序的运行性能, 提供模块化的程序设计, 自定义标示符, 具有过程语言控制结构, 良好的兼容性, 处理运行错误. Pl/SQL语言基础 sql是关系数据库的基本操作语言. s ...
- Oracle PL/SQL 编程基础 实例
create table mytest(name varchar(20),password varchar(30)); create or replace procedure sp_pro2 is ...
- PL/SQL编程基础(三):数据类型划分
数据类型划分 在Oracle之中所提供的数据类型,一共分为四类: 标量类型(SCALAR,或称基本数据类型) 用于保存单个值,例如:字符串.数字.日期.布尔: 标量类型只是作为单一类型的数据存在,有的 ...
- PL/SQL编程基础(四):程序控制(IF,CASE,FOR,LOOP,WHILE LOOP,EXIT,CONTINUE)
程序控制 程序结构有分支结构与循环结构: 分支结构语法:IF.CASE: 循环结构:FOR.WHILE LOOP:先执行再判断,至少执行一次: WHILE LOOP:先判断再执行,如果不满足条件,就不 ...
- oracle PL/SQL编程基础知识
在oracle中使用pl/sql来扩展SQL的功能,使得SQL能够更加的灵活,功能更加强大,效率更高.pl/sql让sql也能执行判断,循环等操作.主要记录一下pl/sql的基本语法和基本条件判断语句 ...
- PL/SQL编程基础(一):PL/SQL语法简介(匿名PL/SQL块)
PL/SQL PL/SQL是Oracle在关系数据库结构化查询语言SQL基础上扩展得到的一种过程化查询语言. SQL与编程语言之间的不同在于,SQL没有变量,SQL没有流程控制(分支,循环).而PL/ ...
- PL/SQL编程基础——PL/SQL简介
课程教师:李兴华 课程学习者:阳光罗诺 日期:2018-07-28 知识点: 1. 了解PL/SQL的主要特点 2. 掌握PL/SQL块的基本结构 PL/SQL PL/SQL是Oracle在关系数据库 ...
- PL/SQL编程基础(五):异常处理(EXCEPTION)
异常处理 异常产生所带来的问题: 使用EXCEPTION程序块进行异常处理: 实现用户自定义异常. 使用异常可以保证在程序中出现运行时异常时程序可以正常的执行完毕: 用户可以使用自定义异常进行操作. ...
随机推荐
- 在iOS上实现一个简单的日历控件
http://blog.csdn.net/jasonblog/article/details/21977481 近期需要写一个交互有点DT的日历控件,具体交互细节这里略过不表. 不过再怎么复杂的控件, ...
- VS MFC 改变AfxMessageBox标题 AFX_IDS_APP_TITLE
其实这个标题在资源String Table里就能找到,查找AFX_IDS_APP_TITLE,在这里你就能轻而易举的改变标题了. 注意:有的工程的资源String Table里面没有添加AFX_IDS ...
- POCO库中文编程参考指南(6)Poco::Timestamp
1 类型别名 三个时间戳相关的类型别名,TimeDiff表示两个时间戳的差,第二个是以微秒为单位的时间戳,第三个是以 100 纳秒(0.1 微妙)为单位的时间戳: typedef Int64 Time ...
- Zabbix监控服务器异常IP登录
保存下面的脚本到任意路径 名字.py 修改属组和权限: chown zabbix:zabbix * chmod 755 * 演示的路径为:/usr/local/zabbix/scripts/ # -* ...
- jQuery Lazy Load图片懒加载
传送门:官网地址,jQuery Lazy Load v1.7.2下载,Github 使用方法: 1.引用js文件 <script src="jquery.js">< ...
- Python的网络编程[1] -> FTP 协议[0] -> FTP 的基本理论
FTP协议 / FTP Protocol FTP全称为File Transfer Protocol(文件传输协议),常用于Internet上控制文件的双向传输,常用的操作有上传和下载.基于TCP/IP ...
- 洛谷 P4551 最长异或路径
题目描述 给定一棵 nn 个点的带权树,结点下标从 11 开始到 NN .寻找树中找两个结点,求最长的异或路径. 异或路径指的是指两个结点之间唯一路径上的所有节点权值的异或. 输入输出格式 输入格式: ...
- 【bzoj3524】【Poi2014】【Couriers】可持久化线段树(主席树)水题
[pixiv] https://www.pixiv.net/member_illust.php?mode=medium&illust_id=62485671 向大(hei)佬(e)势力学(di ...
- [ZJb417]区间众数
题目大意: 给定一个长度为$n(1\leq n\leq10^5)$的正整数序列$s(1\leq s_i\leq n)$,对于$m(1\leq m\leq10^)$次询问$l,r$,每次求区间$[s_l ...
- EDM邮件群发十大技巧提升邮件群发效果
有很多人抱怨现在邮件群发没有什么效果,其实不然,每一种推广方式都有他的优势,没有看到效果说明你没有掌握好方法.个人觉得EDM邮件群发的优势在于传播速度快.不受地域限制.不受时间限制.邮件内容能够多元化 ...