`
javawangli
  • 浏览: 224426 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Oracle 中in out参数实现数字交换

阅读更多

in out参数

in参数可以接收一个值,但是不能在存储过程中修改这个值,而对于out参数,它在调用过程时为空,在过程执行中将为为这个参数指定一个值,并在执行后返回.

in out参数同时具有了in参数和out参数的特性,在过程中可以读取和写入该类型的参数。

 

 

// 比如下面是一个典型的案例交换两个数

SQL> create or replace procedure swap(cempno in out number,
  2        tempno in out number
  3  )is
  4  var_temp number;
  5  begin
  6  var_temp:=cempno;
  7  cempno:=tempno;
  8  tempno:=var_temp;
  9  end swap;
 10  /
 
Procedure created

 

 

swap过程是完成两个数的交换,它需要同时传入两个参数,在交换完成后需要同时返回两个值。下面将编写匿名程序块执行过程:

     SQL> declare

  2  var_max number:=20;

  3  var_min number:=30;

  4  begin

  5   dbms_output.put_line('交换前');

  6   dbms_output.put_line('var_max'||'='||var_max);

  7   dbms_output.put_line('var_min'||'='||var_min);

  8  if var_max<var_min then

  9   swap(var_max,var_min);

 10      end if;

 11   dbms_output.put_line('交换后');

 12  dbms_output.put_line('var_max'||'='||var_max);

 13  dbms_output.put_line('var_min'||'='||var_min);

 14  end;

 15  /

 

交换前

var_max=20

var_min=30

交换后

var_max=30

var_min=20

 

 

1
1
分享到:
评论

相关推荐

    索引中丢失in或out参数终极解决方案.txt

    ---------索引中丢失in或out参数终极解决方案---------- 表现:提示的索引位置大于实际参数个数, 每次重启服务可以成功一次或几次, 之后短时间内全部失败. ---------祝各位工作愉快,全网首发,血泪史----------

    oracle实现带参数视图

    以下是一个具体的示例,展示了如何在 Oracle 中实现一个简单的带参数视图: ```sql CREATE OR REPLACE PACKAGE pkg_pv IS PROCEDURE set_pv(pv VARCHAR2); FUNCTION get_pv RETURN VARCHAR2; END; / CREATE OR ...

    用callabledStatement调用oracle存储过程实用例子(IN OUT 传游标)

    本示例展示了如何使用 CallabledStatement 来调用 Oracle 存储过程,并实现 IN OUT 参数和游标类型参数的使用。这种方法可以提高应用程序的性能和安全性。同时,游标类型参数的使用可以实现数据的批量处理,提高应用...

    oracle通过sql实现字符串转数字oracle函数

    在Oracle数据库中,将字符串转换为数字是一项常见的操作,特别是在处理包含数字的字符串列时,可能需要进行数值计算或按照数值大小进行排序。本篇文章将深入探讨如何在SQL查询中利用Oracle提供的函数来实现这一目标...

    Oracle 子程序参数模式,IN,OUT,NOCOPY

    总结起来,Oracle 子程序参数模式IN、OUT和NOCOPY提供了灵活的数据传递机制,IN用于单向传递数据,OUT用于传出结果,而NOCOPY则是在OUT基础上尝试优化性能的一种方式,允许子程序直接修改调用者的变量。了解和正确...

    oracle数字转换中文

    ### Oracle数字转换为中文大写的实现 #### 核心概念与背景 在财务模块的开发中,将数字转换成中文大写是必需的功能之一,尤其是在中国以及使用中文的地区。例如,在开具发票、合同等正式文档时,通常需要将金额...

    mysql oracle 阿拉伯数字转中文数字

    mysql oracle 阿拉伯数字转中文数字, 亲测可用.找了很长时间才找到,

    oracle 存储过程中某入参是逗号分隔,并且参数要使用在in过滤语句中

    oracle存储过程中入参是逗号分隔,并且参数要使用在in过滤语句中查询数据。处理的方法与实现

    oracle非数字合计,将字段中含有汉子的数据自动转换为 数字0

    例如,如果希望保留部分特定的非数字字符(如“千”、“万”等单位),可以通过调整`translate`函数中的参数来实现。 ### 五、总结 通过对提供的SQL语句的解析和扩展说明,我们了解到如何在Oracle数据库中处理包含...

    Oracle中实现Split函数功能

    Oracle 中实现 Split 函数功能 Oracle 中实现 Split 函数功能是指在 Oracle 数据库中实现类似于 C# 等编程语言中的 Split 函数,用于拆分字符的功能。下面是实现 Oracle 中 Split 函数功能的详细介绍。 首先,...

    Oracle的out参数实例详解

    我们可以利用out参数,在过程和函数中实现返回多个值。 3、存储过程和存储函数都可以有out参数。 4、存储过程和存储函数都可以有多个out参数。 5、存储过程可以通过out参数来实现返回值。 6、如果只有一个返回值,用...

    oracle 数字金额转为汉字大写

    在Oracle数据库环境中,有时我们需要将数字金额转换成汉字大写形式,这在财务报表或理财程序中尤为常见,因为汉字大写是财务领域的一种标准表示方式,可以避免因数字混淆而引发的错误。本篇文章将深入探讨如何在...

    ibatis调用oracle的函数,存储过程的方法 IN 和OUT /游标

    本篇文章将详细探讨如何在iBatis中调用Oracle的函数和存储过程,尤其是处理IN和OUT参数以及游标的场景。 首先,我们需要了解iBatis的基本工作原理。iBatis是一个SQL映射框架,它允许开发者将SQL语句写在XML配置文件...

    实时数据库与Oracle数据交换实现探索

    本文探索了实时数据库与关系型数据库之间的数据交换实现方法,特别强调了在实时数据库系统中,要实现与关系型数据库的数据交换,首先需要了解实时数据库对外公开的数据访问方法。文中以三个主流实时数据库系统——...

    Oracle存储过程out游标

    Oracle存储过程中的“Out”游标是数据库编程中一种常用的技术,主要用于在PL/SQL块中返回结果集到调用者。在这个场景中,我们有三个文件:TESTPACKAGE.txt,CURSOR_TEST2.txt和OracleProcedure.java,分别涉及Oracle...

    Oracle P/L SQL实现FTP上传、下载功能

    Oracle P/L SQL实现FTP上传、下载功能,以下是此过程包的头部,包体经常打包处理plb,感兴趣用户可以下载下来。 --Oracle上的FTP功能 Create or Replace Package UTL_FTP AUTHID CURRENT_USER as Type Connection ...

    oracle过滤数字

    接下来,我们将通过一个具体的例子来展示如何在Oracle中实现数字过滤。假设我们有一个名为`GA_DICT_TW`的表,其中包含`itemtable`和`itemcode`两个字段,现在需要筛选出`itemcode`字段中至少含有一个数字字符的所有...

    java调用存储过程(含out参数)

    在这个例子中,`my_procedure`是存储过程名,`123`是传递给存储过程的`IN`参数,而`OUT`参数是一个字符串类型,我们使用`getString()`方法读取。 请注意,不同的数据库可能需要不同的JDBC驱动和特定的语法。上述...

Global site tag (gtag.js) - Google Analytics