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

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

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

    海鷗航際

    JAVA站
    posts - 11, comments - 53, trackbacks - 1, articles - 102

    Oracle9i中的SQL*Plus

    Posted on 2005-02-03 21:05 海天一鷗 閱讀(157) 評論(0)  編輯  收藏 所屬分類: Java數(shù)據(jù)庫技術

    在Oracle9i中, SQL*Plus現(xiàn)在不僅能接受文件名當作腳本地址,還可以接受HTTP或是FTP地址當作腳本地址來源。舉例來說,通過“@http://www.mycorp.com/sql/setup.sql”這條命令就可以從這個網(wǎng)址裝載SQL腳本,然后在當前的運行環(huán)境下運行。而“@@”命令能知道它當前正在從一個URL上運行,所以會從相同的位置裝載腳本。舉例來說,如果上述裝載的腳本包含以下代碼的話,那么每個SQL腳本將根據(jù)給定的URL被裝載。

    <a target="_blank"><IMG SRC="http://m2.cn.doubleclick.net/1012548/mpu_mymai.swf " WIDTH=468 HEIGHT=60 BORDER=0 ></a>

    REM - setup script
    @@tables.sql
    @@indexes.sql
    @@code.sql

    有些DBA希望集中維護位于一個遠程位置并且可以被不同位置的數(shù)據(jù)庫執(zhí)行的腳本,這對于他們來說是有價值的。這對于那些因沒有SQL*Net而不能連接數(shù)據(jù)庫,但能通過HTTP使用腳本的客戶是特別有用的。

    通過HTTP協(xié)議,腳本可以根據(jù)Web服務器的輸入?yún)?shù)產(chǎn)生。舉例來說,http://www.mycorp.com/cgi-bin/setup.pl?host=bart就將參數(shù)host=bart傳遞給CGI-BIN腳本。SQL *Plus有其單獨的參數(shù)傳遞工具。

    在腳本被裝載之后,這些參數(shù)被綁定起來用于定義參數(shù)。命令@@tables.sql mytablespace將從相同的相關目錄裝載“tables.sql”這個腳本,然后mytablespace 將被綁定到SQL * Plus的&1參數(shù)上。 對于@URL在功能上有一個差別,那就是.sql擴展是不可選擇的

    在Oracle8i中模擬@URL

    這個特征的一個缺點就是他好像不支持HTTP代理。腳本只有通過直接的連接才能夠被裝載。在Oracle8i中的一個變通的通過使用代理進入或者是模擬這個功能實現(xiàn)的腳本如下:

    REM -- http_at.sql
    set feedback off
    set linesize 255
    set serveroutput on size 64000
    set trimspool on
    spool test.sql
    declare
        l_pieces utl_http.html_pieces;
        l_piece     varchar2(2000);
        l_url varchar2(2048) := '&1';
        l_maxline integer := 255;
        l_index integer;
        l_stub      varchar2(255);
        l_proxy varchar2(2048) := 'proxy.mycomp.com:8000';
    begin
        l_pieces := utl_http.request_pieces(l_url,1000,l_proxy);
        for i in l_pieces.first .. l_pieces.last loop
            l_piece := l_pieces(i);
            while length(l_piece) > l_maxline loop
                l_stub := substr(l_piece,1,l_maxline);
                l_index := length(l_stub);
                while l_index > 0 and substr(l_stub,l_index,1) != chr(10) loop
                    l_index := l_index - 1;
                end loop;
                l_stub := substr(l_piece,1,l_index-1);
                l_piece := substr(l_piece,l_index+1);
                dbms_output.put_line(l_stub);
            end loop;
            dbms_output.put_line(l_piece);
        end loop;
    end;
    /
    spool off;

    主站蜘蛛池模板: 成在线人免费无码高潮喷水| 亚洲毛片在线免费观看| 最近2019中文字幕免费看最新| 区久久AAA片69亚洲| WWW国产成人免费观看视频| 亚洲日韩在线观看免费视频| 亚洲激情在线视频| 免费91麻豆精品国产自产在线观看| 亚洲中文字幕不卡无码| 日本三级在线观看免费| 国产国产人免费人成免费视频| 亚洲成亚洲乱码一二三四区软件| eeuss影院免费92242部| 亚洲欧洲成人精品香蕉网| 日韩精品无码免费专区午夜| 亚洲AV永久无码精品水牛影视| 99re6热视频精品免费观看| 国产一级做a爱免费视频| 亚洲免费在线视频| 2021精品国产品免费观看| 亚洲人成777在线播放| 国内自产拍自a免费毛片| 亚洲成a人片在线观看中文!!!| 成人浮力影院免费看| 亚洲AV综合色区无码一区爱AV| 日本免费一区二区三区四区五六区| 亚洲精品成人图区| 国产成人精品高清免费| caoporn成人免费公开| 亚洲AV成人一区二区三区AV| 无遮挡国产高潮视频免费观看| 亚欧免费视频一区二区三区| 亚洲av永久无码精品古装片| 精品国产无限资源免费观看| 在线观看国产一区亚洲bd| 国产免费爽爽视频在线观看| 亚洲国产精品午夜电影| 四虎免费久久影院| 国产99视频精品免费专区| 亚洲成年网站在线观看| 在线精品亚洲一区二区三区|