我要在已有的包中创建一个Procedure,应该如何做?我在有些Procedure中看到“%type”这是代表啥?

解决方案 »

  1.   

    create or replace package sp_test is  procedure...
      procedure...
      ....
    end;create or replace package body sp_test is  procedure...
      procedure...
      ....
    end;表示取类型%type
      

  2.   

    你的意思是不是,我在包里加新建一个过程,要把整个包的包头包体重新运行一遍?
    取类型%type?
    account_ voucher_row_tab.com%type;com中的数据是10,11,12,13
    类型是number那我去的是啥?
      

  3.   

    是要重新编译的就是number.可以直接写number的
      

  4.   

    %type
    一般变量定义时用的,表示和某字段的类型一样比如你需要某个字段传到个变量里去,假设table的id字段是number的,要定义变量v_id
    你可以两种方法v_id   number
    也可以
    v_id   table.id%type%type优点,不需要知道目标字段的类型
    缺点
    当表有增加修改字段时,函数、存储过程、包会失效,要重新编译