游標修改資料

2021-07-05 01:20:54 字數 1286 閱讀 7502

declare updateemtinca_rcursor cursor scroll --宣告乙個游標

for

select emtincar.id as emtincar_id,

case when b.yieldtransitstatetype_id is null then 3 else b.yieldtransitstatetype_id

end as vehiclestatetype_id from emtincar

left join (

select yieldtransit.emtincar_id ,yieldtransit.yieldtransitstatetype_id,

case when yieldtransit.yieldtransitstatetype_id=20 then 1 else 2

end as vehiclestatetype_id from yieldtransit

inner join (

select max(id) as id,emtincar_id from yieldtransit group by emtincar_id

) a on a.id=yieldtransit.id) b on emtincar_id=emtincar.id

open updateemtinca_rcursor --開啟游標

--宣告要提取資料的變數

declare @yieldtransitstatetype_id int ,@vehiclestatetype_id int,@emtincar_id int

--定位游標到哪一行

fetch first from updateemtinca_rcursor into @emtincar_id,@vehiclestatetype_id --into的變數數量必須與游標查詢結果集的列數相同

while @@fetch_status=0 --提取成功,進行下一條資料的提取操作

begin

update emtincar set vehiclestatetype_id=@vehiclestatetype_id where id= @emtincar_id --修改當前行

fetch next from updateemtinca_rcursor into @emtincar_id,@vehiclestatetype_id --移動游標

endclose updateemtinca_rcursor

deallocate updateemtinca_rcursor

游標 批量修改資料

批量修改表中資料 declare my cursor cursor 定義游標 for select from table where id 查出需要的集合放到游標中 open my cursor 開啟游標 fetch next from my cursor 讀取第一行資料 while fetch s...

SQL Server 游標的使用 迴圈修改資料

begin declare id int,returnrequestid varchar 32 returnauditor varchar 32 returndate datetime 宣告游標變數 set id 0 此處id相當於for迴圈裡的i declare order cursor curs...

dev c 修改資料

今天看完 linux kernel moduletcp ip 程式設計 中實現ping命令是顯示hello module 的資料報程式後,也完成了試驗現在總結如下 步驟一 在 net core dev.c中增加後門 int eefunction01 struct sk buff 0 這是函式eefu...