Oracle中怎么创建带有参数的视图
Oracle中怎么创建带有参数的视图,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
首先定义程序包:
/*按个人需要定义,我定义三个参数,因我项目程序需要,所以三个参数都是number,当然可定义其它类型但切记,第二个create的参数类型等需以第一个create一致,否则程序包创建失败*/createorreplacepackagep_view_paramis--参数一functionset_param(numnumber)returnnumber;functionget_paramreturnnumber;--参数二functionset_Type(numnumber)returnnumber;functionget_Typereturnnumber;--参数三functionset_Id(numnumber)returnnumber;functionget_Idreturnnumber;endp_view_param;--createorreplacepackagebodyp_view_paramisparamValuenumber;paramTypenumber;paramIdnumber;--Paramfunctionset_param(numnumber)returnnumberisbeginparamValue:=num;returnnum;end;functionget_paramreturnnumberisbeginreturnparamValue;end;--Typefunctionset_Type(numnumber)returnnumberisbeginparamType:=num;returnnum;end;functionget_TypereturnnumberisbeginreturnparamType;end;--IDfunctionset_Id(numnumber)returnnumberisbeginparamId:=num;returnnum;end;functionget_IdreturnnumberisbeginreturnparamId;end;endp_view_param;
创建的时候记得先创建第一个;
接下来定义视图:
/**定义视图,where后面跟参数,可自己拼装,注意视图字段要和select的字段匹配*/CREATEORREPLACEVIEWabstract_sum_view(fa_id,aircraft_num,aircraft_weight,airline_code,anchor_pos)ASSELECTf.fa_id,f.aircraft_num,findweight(f.aircraft_num),f.airline_code,f.anchor_posFROMtb_flight_abstractfwheref.fa_id=p_view_param.get_Id();--参数--使用视图,传参select*fromabstract_sum_viewwherep_view_param.set_id(3)=3;
关于Oracle中怎么创建带有参数的视图问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。