觸發器
觸發源:insertupdatedelete
after:在觸發源執行后執行觸發器中的代碼
insteadof:在觸發源執行前執行觸發器的代碼,同時觸發源的操作被廢棄
語法:
createtrigger觸發器名
on表名afterinsert,update,delete--可以3個都寫,也可以只寫1個
as
begin
...
end
游標
作用:可以逐條操作表中的數據
缺點:性能低,盡量不要使用
示例:為每個人的英語成績加個隨機數
--定義游標
declares1cursorforselectName,Gender,EnglishfromTable_1
--在訪問游標中某行的數據時,需要聲明變量
declare@sNamenvarchar(50)
declare@sGenderbit
declare@sEnglishnvarchar(10)
--打開游標
opens1
--通過游標從結果集中取數據。注意:每次取一行的值
fetchs1into@sName,@sGender,@sEnglish
--這個全局變量的意思是:當fetch這行沒有問題時,就等于
while(@@FETCH_STATUS=0)
begin
set@sEnglish=@sEnglish+RAND(100)
updateTable_1setEnglish=@sEnglishwhereName=@sNameandGender=@sGender
--再取,才能循環起來
fetchs1into@sName,@sGender,@sEnglish
end
--關閉游標
closes1
--釋放游標
deallocates1
新聞熱點
疑難解答