毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 数据库 >> 正文

oracle函数返回不确定列数的表结构

更新时间:2013-7-28:  来源:毕业论文

oracle函数返回不确定列数的表结构

写了一个行转列的函数,要转换的列的个数是根据参数传进去的,所以返回的结果集的列数不确定。

最终的使用要这样:
select  u.name,p.* from 主表 u,
f_row2colum('列1,列2,列3...') p ---函数
where u.id = p.user_id and u.id='1'

希望函数的返回结果可以直接当作表来查询。

从网上看大概两种方式
一是返回值用洲标,如果用游标的话,好像不能满足我上面的查询方式。
二是自定义TYPE,由于不确定列数,也没有法定义。

还有我想直接把函数里拼好的SQL文返回出来,但是也没法拼到上面的查询执行。
   CREATE OR REPLACE    type PivotImpl as object     (       ret_type anytype,      -- The return type of the table function       stmt varchar2(32767),       fmt  varchar2(32767),       cur integer,       static function ODCITableDescribe( rtype out anytype, p_stmt in varchar2, p_fmt in varchar2 := 'upper(@p@)', dummy in number := 0 )       return number,       static function ODCITablePrepare( sctx out PivotImpl, ti in sys.ODCITabFuncInfo, p_stmt in varchar2, p_fmt in varchar2 := 'upper(@p@)', dummy in number := 0 )       return number,       static function ODCITableStart( sctx in out PivotImpl, p_stmt in varchar2, p_fmt in varchar2 := 'upper(@p@)', dummy in number := 0 )       return number,       member function ODCITableFetch( self in out PivotImpl, nrows in number, outset out anydataset )       return number,       member function ODCITableClose( self in PivotImpl )       return number     )     /

 跟用户协商出来的数据需要在EXCEL中手动调整,看看是否接受

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。