2007-03-14

PL/pgSQL - 游標(CURSOR)

更新:2007-03-14
對映章節:C37.8

內容:
一般的 SELECT 使用 LIMIT 來限制取回 Data 的數量, 其餘的 Queries 均會回傳整個搜尋結果.
但當資料量龐大時回傳會造成本上升, 且可能導致 Client 的 RAM 耗盡. CURSOR 就在這情況被用來解決上述的問題.

條件:

  1. 必須於 Transaction Block 中宣告使用. (SQL-92不限制)
  2. SQL-92定義:CURSOR 必須搭配 OPEN/CLOSE 來挷住資源
    (PostgreSQL 可不宣告).
  3. SQL-92:CURSOR 是可更新的, PostgreSQL read only.


Syntax
DECLARE [name] CURSOR FOR [Queries]
**FOR 可替換成 IS 為了和 ORACLE 相容****

OPEN [name];
CLOSE [name];

FETCH ...

沒有留言:

網誌存檔

PostgreSQL & Google-Analytics Running...

::Planet PostgreSQL::

PostgreSQL Information Page

PostgreSQL日記(日本 石井達夫先生Blog)

PostgreSQL News

黑喵的家 - 資料庫相關

Google 網上論壇
PostgreSQL 8 DBA 專業指南中文版
書籍內容討論與更多下載區(造訪此群組)
目錄下載: PostgreSQL_8 _DBA_Index_zh_TW.pdf (更新:2007-05-18)

全球訪客分佈圖(Google)

全球訪客分佈圖(Google)