您的位置:首页 > 数据库 > Oracle

ORACLE 使用函数返回表数据

2013-04-07 15:37 555 查看
#1.建立一个表对象类型

create or replace type mcard.obj_table_field as object

(

sectionid number(1),

cardid int,

orderid number(3),

fieldlist VARCHAR2(100)

)

#2.建立一个对应的类型

create or replace type mcard.t_table_field is table of obj_table_FIELD

#3.函数

CREATE OR REPLACE FUNCTION MCARD.fn_get_fieldgroup(p_userid IN NUMBER,

p_cardid IN NUMBER,

p_field IN VARCHAR2 DEFAULT '',

p_prerecoflg IN NUMBER DEFAULT 0)

RETURN mcard.t_table_field

pipelined AS

v_obj_table_field mcard.obj_table_field;

BEGIN

......

v_obj_table_field := mcard.obj_table_field(v_sectionid,

p_cardid,

v_ORDER,

v_fieldlist);

pipe row(v_obj_table_field);

......

return;

END ;

#4.调用

INSERT INTO tbl_test

select *

FROM TABLE(fn_get_fieldgroup(v_userid, v_cardid, v_field, v_prerecoflg) a
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐