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

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

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

    zhyiwww
    用平實(shí)的筆,記錄編程路上的點(diǎn)點(diǎn)滴滴………
    posts - 536,comments - 394,trackbacks - 0

    DECLARE

    Name

    DECLARE — 為訪問(wèn)表定義一個(gè)游標(biāo)
    DECLARE cursorname [ BINARY ] [ INSENSITIVE ] [ SCROLL ]
        CURSOR FOR query
        [ FOR { READ ONLY | UPDATE [ OF column [, ...] ] ]
      

    輸入

    cursorname

    將在隨后 FETCH 操作中使用的游標(biāo)名.

    BINARY

    令游標(biāo)以二進(jìn)制而不是文本格式獲取數(shù)據(jù).

    INSENSITIVE

    SQL92 SQL92 關(guān)鍵字, 表明從游標(biāo)檢索出來(lái)的數(shù)據(jù)不應(yīng)該被其他進(jìn)程或游標(biāo)的更新動(dòng)作影響. 因?yàn)樵?Postgres 里,游標(biāo)的操作總是發(fā)生在事務(wù) 里,所以總是符合上面描述.這個(gè)關(guān)鍵字沒(méi)有作用.

    SCROLL

    SQL92 關(guān)鍵字,表明每個(gè) FETCH 操作可以檢索出多行數(shù)據(jù). 因?yàn)樵?span id="icu2gss" class="PRODUCTNAME">Postgres 在任何情況下都允許這樣, 所以這個(gè)關(guān)鍵字沒(méi)有作用.

    query

    一個(gè) SQL 查詢,它提供由游標(biāo)控制的行. 請(qǐng)參考 SELECT 語(yǔ)句獲取有關(guān)有效參數(shù)的詳細(xì)信息.

    READ ONLY

    SQL92 關(guān)鍵字,表明游標(biāo)將用于只讀模式. 因?yàn)檫@是 Postgres 唯一的游標(biāo)訪問(wèn)模式, 所以該關(guān)鍵字沒(méi)有作用.

    UPDATE

    SQL92 關(guān)鍵字,表明游標(biāo)將被用于更新表. 因?yàn)橛螛?biāo)更新目前還不被 Postgres 支持, 所以這個(gè)關(guān)鍵字將產(chǎn)生一個(gè)錯(cuò)誤信息.

    column

    將被更新的列.因?yàn)橛螛?biāo)更新目前不被 Postgres 支持, 所以 UPDATE 子句將產(chǎn)生一個(gè)錯(cuò)誤信息.

    輸出

    SELECT

    如果 SELECT 成功運(yùn)行,返回此信息.

    NOTICE: Closing pre-existing portal "cursorname"

    如果在當(dāng)前的事務(wù)塊中此游標(biāo)名稱已經(jīng)定義,返回此信息. 前面定義的游標(biāo)被丟棄.

    ERROR: DECLARE CURSOR may only be used in begin/end transaction blocks

    如果一個(gè)游標(biāo)沒(méi)有在事務(wù)塊內(nèi)部定義,返回此信息.

    描述

    DECLARE 允許用戶創(chuàng)建游標(biāo), 用于在一個(gè)大的查詢里面檢索少數(shù)幾行數(shù)據(jù). 使用 FETCH. ,游標(biāo)可以既可以返回文本也可以返回二進(jìn)制格式。

    通常游標(biāo)返回文本格式,要么是 ASCII 要么是某種由 Postgres 特定的后端決定的編碼方式. 因?yàn)閿?shù)據(jù)在系統(tǒng)內(nèi)部是用二進(jìn)制格式存儲(chǔ)的, 系統(tǒng)必須對(duì)數(shù)據(jù)做一定轉(zhuǎn)換以生成文本格式. 另外,文本格式一般都比對(duì)應(yīng)的二進(jìn)制格式占的存儲(chǔ)空間大. 一旦格式轉(zhuǎn)換回文本,客戶應(yīng)用需要將文本轉(zhuǎn)換為二進(jìn)制格式來(lái)操作. BINARY 游標(biāo)給你返回內(nèi)部二進(jìn)制形態(tài)的數(shù)據(jù)。

    作為例子,如果查詢從一個(gè)整數(shù)列返回一個(gè)一, 在通常的游標(biāo)里你將獲得一個(gè)字符串'1'而如果是一個(gè)二進(jìn)制查詢, 你將得到一個(gè) 4-字節(jié)的等于ctrl-A('^A')的數(shù)值.

    游標(biāo)應(yīng)該小心使用 BINARY. 一些用戶應(yīng)用如 psql 是不識(shí)別二進(jìn)制游標(biāo)的, 而且期望返回的數(shù)據(jù)是文本格式.

    而且,字符串表示方式是與硬件體系無(wú)關(guān)的, 而二進(jìn)制格式會(huì)因不同的硬件體系不同而不同,而且 Postgres 對(duì)二進(jìn)制游標(biāo)不做字節(jié)序解析或者其他格式轉(zhuǎn)換 。 因此,如果你的客戶機(jī)和服務(wù)器使用不同的格式 (如: "高位高字節(jié)" 和 "底位底字節(jié)").你可能就不會(huì)希望你的數(shù)據(jù) 以二進(jìn)制格式返回.所以二進(jìn)制游標(biāo)將比文本略微快一點(diǎn), 因?yàn)槎M(jìn)制在服務(wù)器和客戶端的數(shù)據(jù)傳輸中有較少的轉(zhuǎn)換.

    小技巧: 如果你希望用 ASCII 顯示數(shù)據(jù), 將數(shù)據(jù)以 ASCII 模式訪問(wèn)將節(jié)省客戶端的工作.

    注意

    游標(biāo)只能在事務(wù)中使用.使用 BEGINCOMMITROLLBACK 定義一個(gè)事務(wù)塊。

    SQL92 中游標(biāo)只能在嵌入 SQL (ESQL) 的應(yīng)用中使用. Postgres 后端沒(méi)有一個(gè)明確的 OPEN cursor 語(yǔ)句;一個(gè)游標(biāo)被認(rèn)為在定義時(shí)就已經(jīng)打開(kāi)了. 不過(guò),Postgres嵌入的 SQL 預(yù)編譯器, ecpg, 支持 SQL92 習(xí)慣,包括那些和 DECLARE 和 OPEN 相關(guān)的語(yǔ)句.

    用法

    定義一個(gè)游標(biāo):

    DECLARE liahona CURSOR
        FOR SELECT * FROM films;
       

    兼容性

    SQL92

    SQL92 只允許在嵌入的 SQL 中和模塊中使用游標(biāo). Postgres 允許交互地使用游標(biāo). SQL92 允許嵌入或模塊的游標(biāo)更新數(shù)據(jù)庫(kù)信息. 所有 Postgres 的游標(biāo)都是只讀的. BINARY 關(guān)鍵字是 Postgres 擴(kuò)展.



    |----------------------------------------------------------------------------------------|
                               版權(quán)聲明  版權(quán)所有 @zhyiwww
                引用請(qǐng)注明來(lái)源 http://www.tkk7.com/zhyiwww   
    |----------------------------------------------------------------------------------------|
    posted on 2006-06-02 18:56 zhyiwww 閱讀(418) 評(píng)論(0)  編輯  收藏 所屬分類: database
    主站蜘蛛池模板: 四虎1515hm免费国产| 亚洲国产系列一区二区三区| 国产精品视_精品国产免费| 久久永久免费人妻精品下载| 特色特黄a毛片高清免费观看| 国产 亚洲 中文在线 字幕| 亚洲手机中文字幕| 亚洲AV无码一区二区乱子伦| 亚洲日本一区二区三区在线不卡| 免费黄色网址入口| 一本岛高清v不卡免费一三区| 最近中文字幕完整版免费高清| a级男女仿爱免费视频| 一区二区三区视频免费观看| 美女视频黄频a免费观看| 亚洲Av永久无码精品黑人| 日本亚洲精品色婷婷在线影院| 亚洲综合一区二区| 久久丫精品国产亚洲av| 麻豆亚洲AV永久无码精品久久| 国产成人亚洲综合无码精品| 亚洲人成网7777777国产| 亚洲伊人久久综合中文成人网 | 亚洲天堂福利视频| 亚洲丝袜美腿视频| 久久久亚洲AV波多野结衣| 亚洲国产精品成人精品无码区在线| 久久夜色精品国产亚洲av| 国内精品99亚洲免费高清| 中文字幕亚洲一区二区三区| 久久久久一级精品亚洲国产成人综合AV区| 成人伊人亚洲人综合网站222| 免费观看国产小粉嫩喷水| 亚洲AV无码不卡在线观看下载 | 亚洲精品色在线网站| 99亚洲男女激情在线观看| 蜜芽亚洲av无码一区二区三区| 久久无码av亚洲精品色午夜| 黄网站色视频免费看无下截 | 亚洲人成无码网站久久99热国产| 免费在线看片网站|