select text from user_source
where  type='PROCEDURE' and name='你的存储过程' 
order by line;
通过以上语句获取存储过程的完整定义,获取后解析下应该就能得到参数的类型了

解决方案 »

  1.   

    sql plus 中,或在你的 PLSQL 打开一个 sql windowSQL> desc 过程名称;
      

  2.   

    查了下数据字典文档,有这个
    select position,argument_name,data_type,data_length,data_scale,defaulted,default_value,in_out
    from user_arguments 
    where object_name='你的过程名' 
    ORDER BY POSITION
      

  3.   

    正是百度了半天没度到的,谢谢。
    select PACKAGE_NAME, OBJECT_NAME, POSITION, ARGUMENT_NAME, DATA_TYPE, IN_OUT
    from user_arguments 
    where 1=1
    --and PACKAGE_NAME like 'PKG_MYPKG'
    --and object_name like 'GET_XXX'
    and PACKAGE_NAME||'.'||OBJECT_NAME like 'PKG_MYPKG.GET_XXX'
    ORDER BY POSITION