想完成一个函数getCoumnInfo,传入任意的SQL,返回该sql结果集的所有列信息。例如: 传入getCoumnInfo('sql select 字段A,字段B,字段C from T')调用函数后返回结果字段A,类型XXX,最大长度XXX,精度XXX
字段B,类型XXX,最大长度XXX,精度XXX
字段C,类型XXX,最大长度XXX,精度XXX请问如何才能做到呢我知道 oracle中有获取table列信息的表 ,但是对于传入任意的sql获取列信息好像还是没有办法啊
,有没有高人能帮助一下,谢谢了

解决方案 »

  1.   

    这个要干嘛?
    查看表结构吗? desc不就可以了?
      

  2.   

    我的意思是,可能传入一个很复杂的SQLselect A.字段1,B.字段2,C.字段3 from a,b,c where a.xxx= b.xxx and c.xxx=b.xxxdesc就没有办法了啊就是说任意的sql都可以获得这个Sql对应的列信息
      

  3.   

    我也很想知道这个答案,我改了一个脚本获取登录用户的表结果信息,但是对于任意SQL也没想出什么好的办法
    SELECT USER_TAB_COLS.TABLE_NAME as 表名,    USER_TAB_COLS.COLUMN_NAME as 列名 , USER_TAB_COLS.DATA_TYPE as 数据类型,    
    USER_TAB_COLS.DATA_LENGTH as 长度,    USER_TAB_COLS.NULLABLE as 是否为空,USER_TAB_COLS.COLUMN_ID as 列序号,    
    user_col_comments.comments as 备注 FROM USER_TAB_COLS inner join user_col_comments on user_col_comments.TABLE_NAME=USER_TAB_COLS.TABLE_NAME and user_col_comments.COLUMN_NAME=USER_TAB_COLS.COLUMN_NAME