1.遊標
# 將sql返回的結果集用遊標進行標註,以後通過對遊標的操作來獲取結果集的數據
# 定義遊標
cursor 遊標名 is select語句;
#打開遊標
open 遊標名;
#提取遊標
fetch 遊標名 into 變量;
#關閉遊標,釋放佔用的系統資源
close 遊標名;
- 例子
大白話解說:Select有多條數據,聲明一個遊標,存這些數據。
open打開遊標,因爲有多條記錄,所以要用loop循環。
fetch取值,從遊標拿select存的數據給c_empno和c_ename(因爲是循環,所以要判斷退出 exit when 。如果遊標當中取不到值,就退出(如果判斷退出語句放在打印語句的後面,則最後一條記錄會打印兩次。因爲當fetch取不到值的時候,接着下一個語句是打印記錄,那沒有值,就打印當前的記錄,那就相當於多打印了一次,下一條語句再判斷沒有值了,退出)
2. 使用遊標刪除部門表中名稱相同的記錄,但要保留最後一次添加的部門(部門編號最大的)
查看數據,lloop只保留50,wloop只保留60,floop只保留65.
查看每個部門編號最大值