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;

PL/SQL --> 包重载、初始化

--========================== -- PL/SQL --> 包重载、初始化 --==========================       包的重载功能类似于C...
  • jerrying0203
  • jerrying0203
  • 2015年04月27日 17:57
  • 158

运行PL/SQL Developer报“oci.dll找不到模块”

环境变量中设置ORACLE_HOME并将%ORACLE_HOME%/bin加入path
  • KarenLu
  • KarenLu
  • 2006年05月10日 18:03
  • 3037

PL/SQL模块

PL/SQL 模块简介: PL/SQL 模块是任何完整的逻辑工作单元。 PL/SQL 一共有 4 个的模块:匿名块,存储过程,函数和包 ...
  • sinkou
  • sinkou
  • 2017年07月20日 10:41
  • 81

PL/SQL块结构

PL/SQL块结构
  • wen_demon
  • wen_demon
  • 2014年03月12日 16:13
  • 975

python 如何重载模块,用一个简单的例子来解释

falsk 在调试时,如果我们对文件有所修改,服务器就会重新启动,而无需我们停下服务器再重新启动,这里面就暗藏了一个重载的机制。         下面用一个简单的例子,来解释python如何重载一个模...
  • KWSY2008
  • KWSY2008
  • 2016年03月25日 09:44
  • 1023

PL/SQL 基本语法

PL/SQL介绍PL/SQL是Oracle对标准数据库语言SQL的过程化扩充,它将数据库技术和过程化程序设计语言联系起来,是一种应用开发语言,可使用循环,分支处理数据,将SQL的数据操纵功能与过程化语...
  • u012414590
  • u012414590
  • 2017年04月06日 17:33
  • 2830

PL/SQL基础(1):语法

目录 1、什么是PL/SQL? 2、PL/SQL基本结构 3、PL/SQL符号定义 4、PL/SQL数据类型 5、PL/SQL条件句法 6、PL/SQL循环 什么是PL/SQL? PL/SQL...
  • dou3516
  • dou3516
  • 2016年09月03日 19:29
  • 689

PL/SQL的可用注册码

注册码: Product Code:4t46t6vydkvsxekkvf3fjnpzy5wbuhphqz serial Number:601769 password:xs374ca 在...
  • sundacheng1989
  • sundacheng1989
  • 2016年10月20日 17:26
  • 3002

PL/SQL练习题一(基础)

Display the employee records who joins the department before their manager? SELECT emp1.* FROM EMPLO...
  • OnlyQi
  • OnlyQi
  • 2016年04月09日 11:47
  • 1806

PL/SQL简介与简单实用

一、PL/SQL简介: (1)PL/SQL俗称过程化SQL语言(Procedural Language/SQL),是Oracle对SQL的 过程化扩充 而形成的程序开发语言。在普通SQL语句的使用...
  • super_YC
  • super_YC
  • 2017年04月03日 04:59
  • 361
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:pl/sql模块重载
举报原因:
原因补充:

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