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. uva 10163 - Storage Keepers(01背包)

    题目链接:10163 - Storage Keepers 题目大意:给出m为仓库的数量, 给出n为有守夜人的数量, 然后给出n个数值,为对应守夜人应付的酬劳,每个守夜人的能力与他需要的酬劳是相等的,并 ...

  2. jquery实现文字选择器

     $( "div:contains('John')" ).css( "text-decoration", "underline" ); 

  3. Redmine email配置

    很简单,先安装sendmail apt-get install sendmail 然后在redmine目录的配置文件conf/configuration.yml中取消几行注释: # ==== Send ...

  4. Ajax框架,DWR介绍,应用,样例

    使用Ajax框架 1. 简化JavaScript的开发难度 2. 解决浏览器的兼容性问题 3. 简化开发流程 经常使用Ajax框架 Prototype 一个纯粹的JavaScript函数库,对Ajax ...

  5. c#常见操作

    1. StreamWriter - 文件写入类StreamWriter s = new StreamWriter(address + "/Menu.ini", true);s.Wr ...

  6. javascript 全选与反选

    <html xmlns="http://www.w3.org/1999/xhtml"><head runat="server">    ...

  7. js中跳转

    <li><a href="javascript:recordRescSifting('+subject.subId+');">'+subject.subNa ...

  8. JavaSE复习日记 : 方法的调用和方法的重载

    /* * 方法的调用和方法重载 */ /* * 什么是方法? * 方法就是一个有名字的代码段; * 方法的调用: * 在方法里调用另外一个方法里面的东西就是方法调用; * 或者可以认为"另外 ...

  9. lightoj 1064 Throwing Dice

    题意:给你n个骰子,求n个骰子的和不小于x的概率. 刚开始想每给一组数就计算一次~~太笨了- -,看了别人的代码,用dp,而且是一次就初始化完成,每次取对应的数据就行了.WA了好多次啊,首先不明白的就 ...

  10. gcc -lpthread 干什么用

    #include <stdio.h> #include <pthread.h> void *ThreadFunc(void *pArg)  //参数的值为123 { int i ...