(+84) 236.3827111 ex. 402

Các thao tác chung trên kiểu cursor (SQL)


Khai báo cursor : DECLARE CURSOR FOR

Mở cursor : OPEN

Sau lệnh mở cursor, con trỏ mẫu tin hiện hành nằm ở vùng BOF.

Xử lý mẫu tin trên cursor:

Di chuyển mẫu tin hiện hành: FETCH NEXT FROM cursor_name

Sử dụng phát biểu Update hoặc Delete để cập nhật hay xóa mẫu tin hiện hành

Đóng cursor: CLOSE

Hủy bỏ cursor: DEALLOCATE

Ví dụ : Điền số báo danh

Create Proc Sc_DienSBD

As

Declare @I Int

--Khai báo biến Con trỏ

Declare Cursv Cursor For

Select Sbd, Tensv From Sinhvien Order By Tensv

Open Cursv --Mở con trỏ

--Xử lý mẫu tin trên con trỏ

Set @I = 1 Fetch Next From Cursv

While @@Fetch_Status = 0

Begin

Update Sinhvien Set Sbd = @I Where Current Of Cursv

Fetch Next From Cursv

Set @I = @I + 1

End

Close Cursv --Đóng con trỏ

Deallocate Cursv --Giải phóng con trỏ