通過游標簡單實現迴圈 定時任務

2022-04-28 18:54:10 字數 1224 閱讀 6046

alter proc [dbo].[jtjj]//靜態獎金只發一百天

asdeclare @username varchar(50)

declare my_cursor cursor --定義游標

for (select w_username from wallet) --查出需要的集合放到游標中

open my_cursor; --開啟游標

fetch next from my_cursor into @username; --讀取第一行資料(將wallet表中的userid放到@username變數中

while @@fetch_status = 0

begin

declare @n int

declare @oldpv decimal(18,2)

declare @oldcv decimal(18,2)

select @n=n,@oldpv=w_dzjfpv,@oldcv=w_cv from wallet where w_username=@username

if @n<=99---------可以繼續新增

begin

declare @pv decimal(18,2)

declare @cv decimal(18,2)

select @pv=dzjf,@cv=rfjfcv from level where id=(select level_id from [user] where username2=@username)-----從等級表中查出每天該發的獎金

insert into jtjjjl(jt_username, jt_pv, jt_cv, jt_datetime)values(@username,@pv,@cv,getdate())

update wallet set w_cv=(@oldcv+@cv),w_dzjfpv=(@oldpv+@pv) ,n=(@n+1) where w_username=@username

endelse

begin

update [user] set ispayed=0 where username2=@username

endfetch next from my_cursor into @username; --讀取下一行資料(將wallet表中的username放到@username變數中)

endclose my_cursor; --關閉游標

deallocate my_cursor; --釋放游標

Golang定時任務簡單實現

go get github.com robfig cron開啟乙個定時 根據cron表示式進行時間排程,cron可以精確到秒,大部分表示式格式也是從秒開始。c cron.new 預設從分開始,所以加上cron.withseconds 保證定時按照表示式字面意思執行。func main c.start...

Golang定時任務簡單實現

go get github.com robfig cron開啟乙個定時 根據cron表示式進行時間排程,cron可以精確到秒,大部分表示式格式也是從秒開始。c cron.new 預設從分開始,所以加上cron.withseconds 保證定時按照表示式字面意思執行。func main c.start...

PHP通過Crontab實現定時任務

php本身是沒有定時功能的,所以要實現定時任務就需要借助其他工具。而linux伺服器下的crontab定時工具就為我們提供了很方便的定時功能。crontab是乙個linux下的定時執行工具。所有使用者定義的 crontab 都被儲存在 var spool cron 目錄中,並使用建立它們的使用者身份...