pl/sql模块重载

原创 2012年03月30日 17:12:10

 

 

模块重载
  多态:语言能够定义并且选择性的使用多个相同名称的程序中的一个的能力。
  静态多态:在编译时刻决定使用哪个程序。重载即为静态多态。
  动态多态:在运行时刻决定使用哪个程序。
  pl/sql支持在块的声明部分,包的声明部分和包体部分,对象类型的定义中对过程和函数进行重载
重载的限制:
  1、重载的程序的参数中至少一个来自不同的数据类型
    参数的数据类型不同但只是属于不同的子类型,不能进行重载,比如一个参数是char,另一个是varchar2。
    但在从0g开始,使用数字类型的不同子类型,也可以重载,比如一个参数是pls_integer,另一个程序的参数是binary_float。oracle遵循这样的优先级:pls_integer或者binary_integer,number,binary_float,binary_double。
  2、重载程序只是参数的名称不同,在调用时必须使用命名表示法。
  3、不能仅靠参数列表中的参数模式区别重载程序
  4、重载函数不能仅靠返回值的数据类型区分
  5、所有的重载程序必须在相同的pl/sql作用范围或者同一个中定义。
比如:declare
        procedure proc_name (num_in in pls_integer) is
          begin
            dbms_output_put_line('pls_integer version');
          end proc_name;
        procedure proc_name (num_in in number) is
          begin
            dbms_output.put_line('number version');
          end proc_name;
        begin
          proc_name(1.1);
          proc_name(1);
        end;

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Oracle PL/SQL开发入门(第六弹:控制语句)

分支控制语句IF-THEN-ELSE如:DECLARE v_count NUMBER (10) := 0; --定义计数器变量 ...

PL/SQL 链接 ORACLE 11G

工作需要在Linux服务器上安装oracle11g,发现远程过去通过命令行执行SQL命令比较麻烦,想在自己的window系统上安装PL/SQL软件链接到ORACLE。开始以为很简单,发现一直配置不上。...

PL/SQL基础编程之(八) [视图、同义词、序列]

概念: 视图只是一个select语句,它是全逻辑的,非物理的。也称之为虚表。有安全、方便、一致性特点 案例1:创建视图 create or replace view myview as selec...

ORACLE(PL/SQL) 根据字符分割(SPLIT)字符串返回数组

ORACLE没有提供现成的函数来进行字符串的分割,网上有很多中现实方法,本文介绍一种我自己的实现方式。主要是使用Oracle内部函数instr和substr函数的方式来实现。

pl/sql之编写分页过程

--开发一个包  --建立一个包,在该包中,我定义类型test_cursor,是个游标。 如下:  Sql代码 create or replace package testpac...

pl/sql笔记

1.对于select出的字符串型数据,在于常量字符串对比之前应对其仅向相关处理,如(trim等)。 如下: for per_msg_rec in per_msg_cur(pf_pri_rec.po...

PL/SQL学习二

6、%TYPE用法    当使用%TYPE属性来定义变量的时候,它会安装数据库的列属性或其他变量的属性来确定你当前定义的新变量的类型和长度。    如:    v_sal emp.sal%TYP...
  • edcvf3
  • edcvf3
  • 2012-08-17 19:05
  • 2128

PL/SQL学习总结(1)

PL/SQL是一种面向过程的类似Pascal的语言,是Oracle公司对SQL语言的功能的扩展,它是将过程性结构与oracle SQL无缝的集成在一起而产生的一种结构化的强有力的语言,是一种高级数据库...

PL/SQL中if,case,loop使用

一.if语句--简单的if...else语句 declare var_id number(4); begin SELECT e.empno into var_id FROM EMP e whe...

有关pl/sql的游标, 文本拼接和绑定变量使用小心得.

一个存储过程, 如果采用使用游标的方式返回结果,并采用文本拼接的方式,可以写成如下, CREATE OR REPLACE PROCEDURE TESTTEST(i_begin_date in Date...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)