<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      302 隨筆 :: 26 文章 :: 82 評論 :: 0 Trackbacks
    ??? 想把報表的某一行數據直排得打印出來,發現ask tom上面已經有現成的代碼了,貼出來看一下,寫得真好,適用性極強
    ?
    ?
    create or replace procedure print_table( p_query in varchar2 )
    AUTHID CURRENT_USER
    is
    ??? l_theCursor???? integer default dbms_sql.open_cursor;
    ??? l_columnValue?? varchar2(4000);
    ??? l_status??????? integer;
    ??? l_descTbl?????? dbms_sql.desc_tab;
    ??? l_colCnt??????? number;
    begin
    ??? execute immediate
    ??? 'alter session set
    ??????? nls_date_format=''dd-mon-yyyy hh24:mi:ss'' ';
    ?
    ??? dbms_sql.parse(? l_theCursor,? p_query, dbms_sql.native );
    ??? dbms_sql.describe_columns
    ??? ( l_theCursor, l_colCnt, l_descTbl );
    ?
    ??? for i in 1 .. l_colCnt loop
    ??????? dbms_sql.define_column
    ??????? (l_theCursor, i, l_columnValue, 4000);
    ??? end loop;
    ?
    ??? l_status := dbms_sql.execute(l_theCursor);
    ?
    ??? while ( dbms_sql.fetch_rows(l_theCursor) > 0 ) loop
    ??????? for i in 1 .. l_colCnt loop
    ??????????? dbms_sql.column_value
    ??????????? ( l_theCursor, i, l_columnValue );
    ??????????? dbms_output.put_line
    ??????????? ( rpad( l_descTbl(i).col_name, 30 )
    ????????????? || ': ' ||
    ????????????? l_columnValue );
    ??????? end loop;
    ??????? dbms_output.put_line( '-----------------' );
    ??? end loop;
    ??? execute immediate
    ??????? 'alter session set nls_date_format=''dd-MON-rr'' ';
    exception
    ??? when others then
    ????? execute immediate
    ????????? 'alter session set nls_date_format=''dd-MON-rr'' ';
    ????? raise;
    end;

    ?
    ??? 執行結果:
    ?
    SQL> exec print_table('select * from v$database');
    ?
    DBID????????????????????????? : 485689964
    NAME????????????????????????? : DODO
    CREATED?????????????????????? : 19-jan-2009 15:10:30
    RESETLOGS_CHANGE#???????????? : 1
    RESETLOGS_TIME??????????????? : 19-jan-2009 14:35:24
    PRIOR_RESETLOGS_CHANGE#?????? : 0
    PRIOR_RESETLOGS_TIME????????? :
    LOG_MODE????????????????????? : ARCHIVELOG
    CHECKPOINT_CHANGE#??????????? : 234242
    ARCHIVE_CHANGE#?????????????? : 125009
    CONTROLFILE_TYPE????????????? : CURRENT
    CONTROLFILE_CREATED?????????? : 19-jan-2009 15:10:30
    CONTROLFILE_SEQUENCE#???????? : 210
    CONTROLFILE_CHANGE#?????????? : 234242
    CONTROLFILE_TIME????????????? : 23-feb-2009 10:04:50
    OPEN_RESETLOGS??????????????? : NOT ALLOWED
    VERSION_TIME????????????????? : 19-jan-2009 15:10:30
    OPEN_MODE???????????????????? : READ WRITE
    PROTECTION_MODE?????????????? : MAXIMUM PERFORMANCE
    PROTECTION_LEVEL????????????? : MAXIMUM PERFORMANCE
    REMOTE_ARCHIVE??????????????? : ENABLED
    ACTIVATION#?????????????????? : 485692838
    DATABASE_ROLE???????????????? : PRIMARY
    ARCHIVELOG_CHANGE#??????????? : 222873
    SWITCHOVER_STATUS???????????? : SESSIONS ACTIVE
    DATAGUARD_BROKER????????????? : DISABLED
    GUARD_STATUS????????????????? : NONE
    SUPPLEMENTAL_LOG_DATA_MIN???? : NO
    SUPPLEMENTAL_LOG_DATA_PK????? : NO
    SUPPLEMENTAL_LOG_DATA_UI????? : NO
    FORCE_LOGGING???????????????? : NO
    -----------------
    ?
    PL/SQL procedure successfully completed
    ?
    ?
    ??? 主要用DBMS_SQL代替了自己寫動態SQL和各種操作的復雜性,真是一個DBMS_SQL包使用的典范教程,保存一下。




    -The End-

    posted on 2009-01-23 23:06 decode360-3 閱讀(335) 評論(1)  編輯  收藏 所屬分類: SQL Dev

    評論

    # re: Print_Table[未登錄] 2010-07-07 23:37 gary
    我的博客里貼得逗號,空格號都被中文化了.,還是google好啊. 馬上找到print_table了.  回復  更多評論
      

    主站蜘蛛池模板: 国产一二三四区乱码免费| 羞羞视频在线免费观看| 99爱在线观看免费完整版| 亚洲狠狠爱综合影院婷婷| 无遮挡呻吟娇喘视频免费播放 | 99热在线精品免费播放6| 亚洲级αV无码毛片久久精品| aa在线免费观看| 久久亚洲国产午夜精品理论片| 中文字幕不卡高清免费| 亚洲成av人在线视| 日本免费一区二区三区四区五六区 | 久久精品亚洲一区二区三区浴池| 久久久国产精品无码免费专区| 亚洲性天天干天天摸| 色影音免费色资源| 456亚洲人成影院在线观| 日本特黄特黄刺激大片免费| 午夜亚洲国产精品福利| 亚洲精品国产精品乱码不卞| 你懂的免费在线观看| 久久久无码精品亚洲日韩蜜臀浪潮 | 亚洲hairy多毛pics大全| 亚洲人成网站观看在线播放| 免费看无码特级毛片| 亚洲欧洲精品久久| 国产精品深夜福利免费观看| 一区二区三区在线观看免费| 亚洲成色www久久网站夜月| 国产h视频在线观看免费| 粉色视频成年免费人15次| 国产亚洲免费的视频看| 免费视频爱爱太爽了| 黄色免费网址大全| 亚洲人成在线播放网站岛国| 最新中文字幕免费视频| eeuss草民免费| 亚洲一级高清在线中文字幕| 免费国产真实迷j在线观看| 国产亚洲免费的视频看| 亚洲精品无码久久久久久|