千家信息网

Oracle中怎么创建带有参数的视图

发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,Oracle中怎么创建带有参数的视图,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。首先定义程序包:/* 按个人需要定义,我定义三个参
千家信息网最后更新 2025年11月08日Oracle中怎么创建带有参数的视图

Oracle中怎么创建带有参数的视图,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

首先定义程序包:

/* 按个人需要定义,我定义三个参数 ,因我项目程序需要,所以三个参数都是number ,当然可定义其它类型但切记,第二个create 的参数类型等需以第一个create一致,否则程序包创建失败*/create or replace package p_view_param is     --参数一  function set_param(num number) return number;   function get_param return number;  --参数二  function set_Type(num number) return number;   function get_Type return number;  --参数三  function set_Id(num number) return number;   function get_Id return number;  end p_view_param; -- create or replace package body p_view_param is     paramValue number;     paramType number;     paramId number;     -- Param    function set_param(num number) return number is     begin      paramValue:=num;      return num;     end;     function get_param return number is     begin      return paramValue;     end;     -- Type    function set_Type(num number) return number is     begin      paramType:=num;      return num;     end;     function get_Type return number is     begin      return paramType;     end;    -- ID    function set_Id(num number) return number is     begin      paramId:=num;      return num;     end;     function get_Id return number is     begin      return paramId;     end;  end p_view_param;

创建的时候记得先创建第一个;

接下来定义视图:

/**定义视图,where 后面跟参数,可自己拼装,注意视图字段要和select的字段匹配*/CREATE OR REPLACE VIEW abstract_sum_view(fa_id, aircraft_num,aircraft_weight,airline_code,anchor_pos)      AS SELECT f.fa_id, f.aircraft_num,findweight(f.aircraft_num),f.airline_code,f.anchor_pos      FROM tb_flight_abstract f       where f.fa_id=p_view_param.get_Id(); --参数--使用视图,传参 select * from abstract_sum_view where p_view_param.set_id(3)=3 ;

关于Oracle中怎么创建带有参数的视图问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

0