create or replace procedure pr_test1 is

v_case number(3) := 100;--定义变量

begin
-- /*判断语句
if 2>1 then
dbms_output.put_line('条件成立');
else
dbms_output.put_line('条件不成立');
end if; if 2<1 then
dbms_output.put_line('条件成立'); elsif 4>3 then
dbms_output.put_line('条件不成立1');
end if; elsif 4 > 2 then
dbms_output.put_line('条件不成立2'); elsif 7>3 then
dbms_output.put_line('条件不成立3'); end if;
-- */ case v_case --定义v_case when 1 then --当v_case为1时
dbms_output.put_line('条件成立12');--输出 when 100 then
dbms_output.put_line('条件成立112'); else--其他匹配都不成立时
dbms_output.put_line('条件不成立,条件不匹配!');
end case; case
when 8>7 then
dbms_output.put_line('8>7成立');
when 9>8 then
dbms_output.put_line('9>8成立');
else
dbms_output.put_line('都不成立');
end case; <<loop1>>--标签,只是为了标注退出的是循环loop1
loop
v_case := v_case - 1;
dbms_output.put_line('v_case的值 = '||v_case);
--if(v_case = 90) then
--dbms_output.put_line('退出循环');
exit loop1 when v_case = 90; --end if; end loop; while v_case >80
loop
v_case :=v_case - 1;
dbms_output.put_line('v_case的值 = '||v_case);
end loop; for inx in 1..20 loop--定义一个变量从1开始一直到20
v_case := v_case + inx;
dbms_output.put_line('v_case的值 = '||v_case);
end loop; for inx in reverse 1..20 loop--从大到小开始,从20开始一直到1
v_case := v_case + inx;
dbms_output.put_line('v_case的值 = '||v_case);
end loop; end pr_test1;

if判断语句 case语句 循环语句使用方式

create or replace procedure pr_test5 is
begin
update t_hq_ryxx set bumbm = '' where bumbm is null;--where 是判断条件 if sql%rowcount > 0 then
dbms_output.put_line('更新了 '||sql%rowcount||' 条记录');
else
dbms_output.put_line('更新了 0 条记录');
end if;
commit;--提交语句
end pr_test5;

数据的更新操作

--通过输入编号进行相关内容的匹配,匹配成功后输出相关内容
create or replace procedure pr_test3(v_bh in varchar2,v_xx in out varchar2) is
begin
--定义输入输出xingm变量为v_xm 并将bianh为变量v_bh ,输入的是编号,与bumbm匹配才可以输出配上的姓名
select xingm into v_xx from t_hq_ryxx where bianh = v_bh and bumbm = v_xx;
if sql%found then
dbms_output.put_line('查找到le数据!');
else
dbms_output.put_line('未查找到数据');
end if;
exception
when no_data_found then dbms_output.put_line('未查找到数据'); dbms_output.put_line('sqlcode:'||sqlcode);--错误代码
dbms_output.put_line('sqlerrm:'||sqlerrm);--错误信息 when others then dbms_output.put_line('查找出错'); dbms_output.put_line('sqlcode:'||sqlcode);--错误代码
dbms_output.put_line('sqlerrm:'||sqlerrm);--错误信息
end pr_test3; create or replace procedure pr_test4(v_bh in varchar2) is
v_xm t_hq_ryxx.xingm%type;
begin
v_xm :='';
pr_test3(v_bh,v_xm);
dbms_output.put_line(''||v_xm);
end pr_test4;

oracle子程序数据关联及异常处理

oracle基础代码使用的更多相关文章

  1. Oracle基础学习笔记

    Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...

  2. Mysql基础代码(不断完善中)

    Mysql基础代码,不断完善中~ /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限 ...

  3. oracle基础教程(8)oracle修改字符集

    oracle基础教程(8)oracle修改字符集 1.用dba连接数据库 -->sqlplus / as sysdba 2.查看字符集 -->SELECT parameter, value ...

  4. 图说Oracle基础知识(一)

    本文主要对Oralce数据库操作的基础知识进行一下梳理,以便进行归纳总结.适用于未使用过Oracle数据库的读者,或需要学习Oracle数据库方面的基础知识.如有不足之处,还请指正. 关于SQL介绍的 ...

  5. 如何保障Go语言基础代码质量?

    为什么要谈这个topic? 实践中,质量保障体系的建设,主要针对两个目标: 一是不断提高目标业务测试覆盖率,保障面向客户的产品质量:二就是尽可能的提高人效,增强迭代效率.而构建全链路质量卡点就是整个体 ...

  6. oracle基础教程oracle客户端详解

    oracle基础教程oracle客户端工具详解 参考网址:http://www.oraclejsq.com/article/010100114.html 该教程介绍了oracle自带客户端sqlplu ...

  7. Oracle基础 表分区

    Oracle基础 表分区 一.表分区 (一)表分区的分类 1.范围分区(range) 2.散列分区(hash) 3.列表分区(list) 4.复合分区:范围-哈希(range-hash).范围-列表( ...

  8. Oracle基础了解

    数据库: 关系型数据库 select * from 表名 非关系型数据库(做不到复杂查询) 以对象的形式进行存储 {"aaa":"ccc"}---键值对 ora ...

  9. oracle数据库代码块

    --申明变量.游标 declare a ):'; --逻辑 begin INSERT into TEMP_DSF.TEST VALUES (a); end; tips:mysql不支持匿名块.仅在存储 ...

随机推荐

  1. Linux学习笔记3-VI 和 VIM的使用

    vi: Visual Interface vim: VI iMproved 全屏编辑器, Linux系统下最强大的两款编辑器,vi和vim,vi是Linux本身自带的一款编辑器,纯文本编辑不带任何效果 ...

  2. 全国计算机等级考试二级教程-C语言程序设计_第15章_位运算

    位运算,不适用于实数,仅仅适用于整数.字符. C语言的位运算只能操作整数.字符,实数是指数方式表示的,不适用于位运算. #define _CRT_SECURE_NO_WARNINGS #include ...

  3. UIScrollview不全屏,解决方案

    self.edgesForExtendedLayout = UIRectEdgeNone;

  4. 确定比赛名次(map+邻接表 邻接表 拓扑结构 队列+邻接表)

    确定比赛名次 Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submis ...

  5. Codeforces Round #258 (Div. 2/C)/Codeforces451C_Predict Outcome of the Game(枚举)

    解题报告 http://blog.csdn.net/juncoder/article/details/38102391 题意: n场比赛当中k场是没看过的,对于这k场比赛,a,b,c三队赢的场次的关系 ...

  6. JAVA模板方法模式

    模板方法模式的结构 模板方法模式是所有模式中最为常见的几个模式之一,是基于继承的代码复用的基本技术. 模板方法模式需要开发抽象类和具体子类的设计师之间的协作.一个设计师负责给出一个算法的轮廓和骨架,另 ...

  7. java 获取两个日期相差的毫秒数

    方法一可以使用date的getTime()方法来将当前日期格式的时间转换为毫秒数,进而相减. long systime = new Date().getTime();//当前系统时间        l ...

  8. c++中自增(++)和自减(--)操作符

    自增(++)和自减(--)操作符为对象加1 或减1 操作提供了方便简短的实现方式.它们有前置和后置两种使用形式.到目前为止,我们已经使用过前自增操作,该操作使其操作数加1,操作结果是修改后的值.同理, ...

  9. OCP prepare 20140626

    1. 查询空值  条件为<>''   是查不出结果的. 如果要查,应该使用  is not null 来查. QUESTION NO: 135 View the Exhibit and e ...

  10. C#中的线程(一)入门 转

    文章系参考转载,英文原文网址请参考:http://www.albahari.com/threading/ 作者 Joseph Albahari,  翻译 Swanky Wu 中文翻译作者把原文放在了& ...