<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 閱讀(341) 評論(1)  編輯  收藏 所屬分類: SQL Dev

    評論

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

    主站蜘蛛池模板: 黄页网址大全免费观看12网站| 亚洲无限乱码一二三四区| 一个人看的免费高清视频日本| 性做久久久久久免费观看| 亚洲性69影院在线观看| 1000部国产成人免费视频| 亚洲AV成人片色在线观看高潮 | 亚洲精品成人av在线| 亚洲高清美女一区二区三区| 97人妻精品全国免费视频 | 99久久免费观看| 国产裸模视频免费区无码| 亚洲乱码一区二区三区在线观看 | 亚洲美女在线观看播放| 日本视频一区在线观看免费| 亚洲av日韩av无码av| 中国毛片免费观看| 久久亚洲伊人中字综合精品| 久久国产精品成人片免费| 亚洲色图激情文学| 国产国产成年年人免费看片| 一级毛片**免费看试看20分钟| 九月丁香婷婷亚洲综合色| 18女人水真多免费高清毛片| 亚洲砖码砖专无区2023| 免费**毛片在线播放直播| 日韩a级无码免费视频| 亚洲日本香蕉视频观看视频| 日本免费人成视频播放| 亚洲AV无码国产精品色| 国产猛烈高潮尖叫视频免费 | 亚洲av无码一区二区三区在线播放| 国产伦一区二区三区免费 | 午夜小视频免费观看| 免费人成在线观看播放a| 亚洲精品无码MV在线观看 | 91精品成人免费国产片| 亚洲国产区男人本色| 亚洲人精品午夜射精日韩| 成人免费午夜无码视频| 免费无遮挡无遮羞在线看 |