SQL遊標總結 - sql server 2012數據庫基礎-遊標的應用-實驗報告

這是我大三第一學期《數據庫基礎》這門課的實驗報告,總共15個實驗,我挑了幾個比較重要的放在博客上,方便查看和複習,尤其是最近SSM後端開發,希望對大家,以及將來的我有所幫助!

遊標通俗化理解就是一個指針,通過指向一條條的記錄,來實現我們想要的提取數據的功能。另外在聲明遊標那塊,有很多關鍵字各有各的作用,以後有機會可以去一一嘗試一下,比如KEYSET、DYNAMIC、FAST_FORWARD、SCROLL_LOCKS等等。


實驗要求

1. 參考書中例7-3建立一個嵌套遊標應用,其功能是按學號升序列出全體學生信息(學事情、姓名、院系名稱)及其所修課程的名稱和考試成績信息(基於實驗5建立的表和實驗6插入的數據)。

2. 按要求逐一讀出遊標中的記錄並顯示。


全部總結鏈接

SQL基礎   (數據庫、表、數據的增刪改查、視圖相關,以及所有實驗報告源代碼)

遊標 (類似C++ 的 指針)

存儲過程(類似 C++ 的自定義函數)

觸發器 (類似 自定義的陷阱,或者說是監聽器,滿足某個條件了執行某個方法)

用戶權限及權限管理 (類似Windows的多用戶管理)

併發控制 (瞭解多個用戶同時對數據造成錯誤的情況 和 解決方法)

數據恢復(當數據庫數據丟失,相應的解決方法)


實驗過程

第一步:聲明遊標

 

圖 1  第一步 ---> 聲明遊標

我的基本語法:   

​​​​​​​declare 遊標名字 Corsor  [scroll] for  SQL語句

注:另外有很多可有可無的關鍵字,各有各的作用,其中scroll的官方定義:指定所有的提取選項均可用。感覺很高級的樣子 。 其中sql代碼根據題目要求,查詢每個學生的學號、所在院系名、課程名、成績,並且按照學號升序排序。


第二步:打開遊標

 

圖 2 第二步 ---> 打開遊標

我的基本語法

open 遊標名

注:這個很簡單暴力了,open就是打開,顧名思義就是打開遊標


第三步:聲明變量

 

圖 3  ---> 聲明遊標

我的基本語法

Declare [變量名 數據類型], [變量名 數據類型], [變量名 數據類型]……

第四步:用遊標抓取數據

 

圖 4 --->用遊標抓取數據

我的基本語法

fetch First from 遊標名 into 變量名1, 變量名2, 變量名3……

while @@fetch_status = 0

    begin

        需要執行的操作……
    
        需要執行的操作……

        需要執行的操作……
    
        fetch next from 遊標名 into 變量名1, 變量名2, 變量名3……

    end

注:其中@@fetch_status 爲0 代表遊標語句執行成功  爲-1或-2代表執行失敗 其中-1是遇到了小錯誤 -2是遇到了大錯誤…(我的通俗化理解)


第五步:關閉遊標  釋放

 

圖 5 --->關閉釋放遊標我的基本語法

Close 遊標名  --關閉遊標

Deallocate 遊標名  --釋放遊標內存

最終結果:

 

圖 6 最終結果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章