[color=red][b]游標屬性:[/b][/color]
[table]
|notfound 未找到資料返回true|
|found 找到資料返回true|
|rowcount 游標當前位置|
[/table]
declare
--宣告游標,這時資料庫並沒有真正去select資料
cursor c is
select * from emp;
v_emp c%rowtype;
begin
--開啟游標,此時執行select
open c;
--執行fetch後,游標自動向下移動一條資料。沒有迴圈,所以只取出第一條資料
fetch c into v_emp;
dbms_output.put_line(v_emp.ename);
close c;
end;
[color=red]
[b]迴圈取得游標內所有資料[/b][/color]
declare
cursor c is
select * from emp;
v_emp c%rowtype;
begin
open c;
loop
fetch c into v_emp;
exit when (c%notfound);
dbms_output.put_line(c%rowcount);
dbms_output.put_line(v_emp.ename);
end loop;
close c;
end;
declare
cursor c is
select * from emp;
v_emp c%rowtype;
begin
open c;
fetch c into v_emp;
while (c%found) loop
dbms_output.put_line(c%rowcount);
dbms_output.put_line(v_emp.ename);
fetch c into v_emp;
end loop;
close c;
end;
declare
cursor c is
select * from emp;
begin
for v_emp in c loop
dbms_output.put_line(c%rowcount);
dbms_output.put_line(v_emp.ename);
end loop;
end;
plsq游標筆記
游標可以分為顯示游標和隱式游標。隱式游標 由oracle伺服器自動建立和管理,使用者是不能訪問隱式游標。當必須執行sql語句時,orcale伺服器自動建立乙個這樣的游標。顯示游標 由使用者自己宣告。隱式游標訪問方式 sql not found 最近的sql語句返回至少一行資料時,為true。sql ...
plsq程式設計 sql語句
color red b plsql中的sql語句只能返回一條記錄,而且必須返回一條記錄 b color 示例 查詢記錄 declare v ename emp.ename type v sal emp.sal type begin select ename,sal into v ename,v sa...
plsql存過宣告游標 SQL記錄 PLSQL游標
oracle會建立乙個儲存區域,被稱為上下文區域,用於處理sql語句,其中包含需要處理的語句,例如所有的資訊,行數處理,等等。游標是指向這一上下文的區域。pl sql通過控制游標在上下文區域。游標持有的行 乙個或多個 由sql語句返回。行集合游標保持的被稱為活動集合。可以命名乙個游標,它可以在程式中...