oracle的存储过程能否有类似decode那样的不定数量和类型的参数的过程?

解决方案 »

  1.   

    没人知道oracle内置函数的原理么?decode可以输入任意数量的参数,min,max等都可以输入任何类型的参数,难道自己写的过程里就做不到这些么,另外再问下oracle有析构函数么?
      

  2.   


    任何类型很简单,写到包里,包内重载。
    任意个数?你是没试过吧,你输入十万个参数试试。
    一定范围内任意个数很简单,
    create or replace procedure pro_i_am_max(p1 in varchar2,p2 in varchar2 default '',p3 in varchar2 default ''..
    p256 in varchar2 default '') as...
    但是,里面就不好写了,人家内部函数可以直接用高级语言调地址,你一个用PL/SQL写的函数还得用参数名,累也累死了,用context还稍稍能看,也麻烦。
    没有。好多高级语言都没有,一个PL/SQL为什么要有。
    对象有成员函数可以用来写析构,过程结束后可以调用审计功能,写个类似触发器的东西。