在游標中使用引數:
cursor cursor_name(p_state in state%type) isselect_statement;
沒有引數的寫法是
cursor cursor_name isselect_statement;
對於括號裡面的,in 左邊是引數的別名,in 右邊是引數的型別,對於輸入的引數,可以設定預設值
使用引數的語法
opencursor_name (parameter_value);[or
]for record_name in
cursor_name(parameter_value)
loop
null
;end loop;
for update 和 where current
當希望更新資料庫的表時,只能使用游標 for update子句。因為使用select 語句是,不會鎖定任何資料行。
使用for update 的目的是鎖定希望更新的資料庫表中資料行,以便於在執行完更新操作前,其他人不能更新操作。
cursor cursor_name isselect_statement
forupdate
[of column_name
];
where current 語句只能在與 for update 語句一起使用。
1declare
2cursor c_name is select_statement for
update
ofcol_name;3
begin
4for r_name in
c_name
5loop
6update t_name set
col_name
=value
7where
current
ofc_name;
8end
loop;
9end;
第7行中的 current of 後跟游標名,通過游標指定的update of 可以定位到需要更新的操作,這樣就避免 where 的匹配寫法(where col_name= r_name.col_name)
Oracle 游標操作
sql語言分為六種,其中ccl cursor control language游標控制語言 簡單定義 游標是指向結果集的指標,類似迭代器iterator 一開始指向結果集的第一條記錄之前的記錄,每fetch一次往下移動一條記錄,返回指標指向的當前記錄。游標的操作 1 宣告游標 cursor c is...
ORACLE中用for in 使用cursor
cursor cur is select from for cur result in cur loop begin v sum cur result.列名1 cur result.列名2 end end loop end 中的cursor cur is得到的是什麼?用for in 能夠得到什麼?答...
Oracle中的游標操作
游標是oracle系統在記憶體中開闢的乙個工作區,在其中存放select語句返回的查詢結果 1 游標操作的過程 1 定義游標 2 開啟游標 3 游標的操作 移動,讀取資料 4 關閉游標 注釋 游標的定義格式 cursor cusor name is select語句 游標的開啟 open 游標名 游...