create procedure `p_delete_test_teacher`(in t_id bigint,out res_code int)
begin
/*定義游標結束標記*/
declare done int default 0;
/*定義臨時儲存變數儲存遍歷右邊的id*/
declare tmp_id bigint default -1;
/*宣告游標*/
declare rs cursor for select tr.id from t_test_result tr where testing_id = t_id;
/*游標遍歷結束時給游標結束標記賦值為1*/
declare continue handler for not found set done = 1;
set res_code = 0;
if t_id <> -1 then
delete from t_rel_user_testing where testing_id = t_id;
delete from t_test_item where testing_id = t_id;
/*刪除t_test_result_item關聯資料*/
/*開啟游標*/
open rs;
/* 遍歷游標 */
fetch next from rs into tmp_id;
repeat
if not done then
delete from t_test_result_item where test_result_id = tmp_id;
end if;
fetch next from rs into tmp_id;
until done
end repeat;
/* 關閉游標 */
close rs;
/*刪除t_test_result關聯資料*/
delete from t_test_result where testing_id = t_id;
delete from t_testing where id = t_id;
end if;
set res_code = 1;
end
mysql儲存過程游標的運用,適合對游標剛學習者。
近來,因業務的需要寫了乙個儲存,放上面曬曬。適合對游標剛學習者,大致業務是實現對多張表審核操作需要插入審核訊息記錄 建立帶有三個輸入引數,乙個輸出引數的儲存 create procedure prop dealmessage in ids integer in status1 integer in ...
oracel中對游標的操作
1 游標是從資料表中提取出來的資料,以臨時表的形式存放在內 存中 2 游標 定義游標 cursor 游標名 is select 查詢語句 游標定義之後,在使用前必須通過 open 開啟游標。開啟游標 open 游標名 將符合條件的記錄送入記憶體 將指標指向第一條記錄 例1 declare curso...
對游標的認識
1.游標是什麼 游標是sql 的一種資料訪問機制。可以將游標簡單的看成是查詢的結果集的乙個指標,可以根據需要在結果集上面來回滾動,瀏覽需要的資料。2。游標的使用 下面展示一些內聯 片。宣告游標 declare cur cust level cursor for select id,consumeam...