資料庫 sql游標

2021-08-30 19:57:20 字數 1147 閱讀 5550

1基本知識

declare 定義游標

open  開啟游標

fetch 從游標中取一行資料,每一次提取資料後,游標都指向結果集的下一行

close 關閉游標,使游標失去作用,並且結果集變成未定義,游標關閉可以重開

declare cursor v_cursor is -- 定義游標 select * from dual; v_table dual%rowtype; --表型別 v_name dual.dummy%type; --列型別 begin open v_cursor; --開啟游標 loop fetch v_cursor -- 取資料 into v_table; exit when v_cursor %notfound; dbms_output.put_line(v_table.dummy); end loop; close v_cursor; -- 關閉游標 end;

例子:資料遷移 

2 游標屬性

顯示游標屬性

%found 布林屬性

%notfound

%isopen 布林屬性

%rowcount:此數字屬性返回目前為止游標返回行的數目,如果在相關  聯的游標還沒有開啟進行引用,會返回錯誤,fetch之前是0.

隱式游標屬性

同上,只不過針對的是insert,update,delete和select into 例子

declare v_table dual%rowtype; --表型別 v_name dual.dummy%type; --列型別 begin select * into v_table from dual; if sql%found then dbms_output.put_line(v_table.dummy); end if; end; declare v_name table1.dummy%type := 'y'; --列型別 begin update table1 set dual.dummy = v_name ; if sql%found then dbms_output.put_line(sql%rowcount); end if; end;

SQL資料庫 游標

什麼是游標 如何使用游標 游標的作用 游標的優缺點 游標是sql 的一種資料訪問機制。可以將游標簡單的看成是查詢的結果集的乙個指標,可以根據需要在結果集上面來回滾動,瀏覽需要的資料。普通游標 declare username varchar 20 userid varchar 100 declare...

資料庫游標

資料庫之 游標 轉貼 在資料庫開發過程中,當你檢索的資料只是一條記錄時,你所編寫的事務語句 往往使用select insert 語句。但是我們常常會遇到這樣情況,即從某一結果集中逐一地讀取一條記錄。那麼如何解決這種問題呢?游標為我們提供了一種極為優秀的解決方案。1.游標和游標的優點 在資料庫中,游標...

資料庫游標

資料庫游標 2007 10 10 15 40 游標提供了一種對從表中檢索出的資料進行操作的靈活手段,就本質而言,游標實際上是一種能從包括多條資料記錄的結果集中每次提取一條記錄的機制。游標總是與一條t sql 選擇語句相關聯因為游標由結果集 可以是零條 一條或由相關的選擇語句檢索出的多條記錄 和結果集...