找回密码
 立即注册
查看: 1718|回复: 1

[技术文章] 泡点每分钟增加1商城币并实时更新商城点数,13职业端测试可用,其他未测试

[复制链接]

2

主题

75

回帖

812

积分

高级会员

积分
812
金钱
678
贡献
57
注册时间
2024-9-13
发表于 2025-1-18 17:03:06 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 10 贡献 才能浏览

2

主题

75

回帖

812

积分

高级会员

积分
812
金钱
678
贡献
57
注册时间
2024-9-13
 楼主| 发表于 2025-1-18 17:04:14 | 显示全部楼层
第二步------------------首先需要SQL代理需要运行状态,在执行下面使用SQL作业计划每分钟运行一次-----------------------7 t, f0 `: a) G) L. w/ a
USE msdb;( @$ ~: O8 O& ~9 r- {) C8 J; {
GO
  f7 b# _% G- @: J, X" |2 w3 v# I8 g7 @# S
-- 如果作业已存在,则先删除它
8 W+ o# V1 g- O& _; z6 G, iIF EXISTS (SELECT job_id FROM msdb.dbo.sysjobs WHERE name = N'IncreaseUserCashJob')
8 O# e. P1 `7 g2 s. u1 Z' e! `& m. z    EXEC sp_delete_job @job_name = N'IncreaseUserCashJob';
3 X3 @* H! o, U, r; i6 w, V; N' _GO
% j: ?5 o& B. |: W3 R
: u' V3 ?* e' p+ }0 d/ h. b+ ]! K8 S-- 创建新的作业
$ e6 K) e- x$ X8 n+ tEXEC sp_add_job
5 E6 B4 _; \: I( a& H8 c! g6 [    @job_name = N'IncreaseUserCashJob',               -- 作业名称
/ F7 E  v" H, |& ?7 E/ W9 A    @enabled = 1,                                    -- 启用作业, y. y1 x9 V5 M+ G  t4 a+ H/ Y
    @notify_level_eventlog = 0,                      -- 不在事件日志中记录作业状态更改) f1 R& k" u( Y+ ]; o
    @notify_level_email = 0,                         -- 不发送电子邮件通知) k1 m1 V4 P/ \" D$ n
    @notify_level_netsend = 0,                       -- 不发送网络消息通知0 j* g' Z( m+ D( M
    @notify_level_page = 0,                          -- 不发送寻呼通知
4 ^1 r% r8 }& i    @delete_level = 0,                               -- 不自动删除作业0 o1 d3 h1 A& P" }2 }
    @description = N'This job increases user cash by 1 for all online users every minute.', -- 作业描述- V0 F! x* l6 j1 |! b- V
    @category_name = N'[Uncategorized (Local)]',     -- 作业类别
7 d& t# i  q+ d( R* m    @owner_login_name = N'YourLoginName',            -- 作业所有者(请替换为实际的登录名)) S2 z9 X& X# E* J( s. H$ G
    @notify_email_operator_name = N'';               -- 不指定电子邮件通知操作员
) Q5 S+ ^" P" v: Q4 c* t: Z) S. fGO
" ]+ j5 L4 M% S7 W/ V& i2 O- S% J6 T9 c/ w& U# n7 W1 B  o2 r- F
-- 为作业添加一个步骤
! _1 {! n% P  N; e+ }EXEC sp_add_jobstep
8 S  l1 P3 [1 L, t! C- \: ~: p    @job_name = N'IncreaseUserCashJob',              -- 作业名称5 h1 V6 [' d( t+ s' m: x6 v
    @step_name = N'ExecuteStoredProcedure',         -- 步骤名称0 M4 W" C/ r: F' a3 {
    @subsystem = N'TSQL',                           -- 指定步骤使用的子系统(这里是Transact-SQL)
- i. w, p  `$ y2 m    @database_name = N'account',                     -- 指定数据库名称7 b' W0 q# X& |1 @. _  O+ q& c0 G) k  t
    @command = N'EXEC dbo.IncreaseUserCashByOnlineDuration;', -- 要执行的命令(存储过程)5 G7 z: Z! `) c0 F; S
    @retry_attempts = 5,                             -- 重试次数% P( G0 F2 k8 g9 u* M
    @retry_interval = 5;                             -- 重试间隔(分钟)
; q: q8 A! q% v/ X$ [7 ZGO3 W) y" E8 N  \. n! O5 E
! l% e8 B$ G. H( Y. d% \) F/ {
-- 为作业添加一个每分钟执行一次的调度- E: P/ G: ~5 q1 l" O
EXEC sp_add_schedule . F' J, G7 ~1 c, ]# v# s
    @schedule_name = N'MinuteSchedule',             -- 调度名称: b9 q) i7 e* k
    @freq_type = 4,                                  -- 频率类型(4表示每日)
. Q. t5 ?% f1 q9 ~    @freq_interval = 1,                              -- 对于每日频率,这里设置为1表示每天都执行
8 Q: ^, G  D. ~& g0 W" |    @freq_subday_type = 4,                           -- 子日频率类型(4表示分钟)
! K; O- _# w# I" m* ~( @    @freq_subday_interval = 1,                       -- 子日频率间隔(每分钟执行一次)
0 ~' `4 P# b9 ]  k  j    @active_start_date = 20250118,                   -- 活动开始日期(格式YYYYMMDD)
$ r2 ^* Y: [( @7 V# z7 C! {    @active_start_time = 0,                          -- 活动开始时间(以24小时制表示,0表示午夜)
- d) C0 W% m0 ^    @active_end_date = 99991231,                     -- 活动结束日期(通常设置为一个遥远的未来日期)5 t6 n1 c  y0 \, f( c9 v
    @active_end_time = 235959;                       -- 活动结束时间(以24小时制表示,235959表示一天的最后一分钟)
) S& }+ r" h+ G5 U) @GO
# B) A/ x& \4 T6 |& y5 C: n+ ~+ B; N  ?; k% S% d
-- 将作业与调度关联起来% m# C' X, ~5 \" K" r# K0 ^; V
EXEC sp_attach_schedule + J0 ]! L0 F' n8 P
    @job_name = N'IncreaseUserCashJob',              -- 作业名称. Z- g' b2 Q$ [
    @schedule_name = N'MinuteSchedule';             -- 调度名称8 s+ _. m" G* }3 a6 Z( O7 Y
GO
9 Z6 y! o$ F5 m+ I5 @! [) x1 [7 m9 A
-- 提交作业创建到SQL Server Agent- T) S2 O/ x1 J8 P0 b: ^
EXEC sp_add_jobserver
! s: R; z! o6 b    @job_name = N'IncreaseUserCashJob',              -- 作业名称9 L& Z1 z. s7 u0 }6 S3 a9 p0 \
    @server_name = N'(LOCAL)';                       -- 服务器名称(对于本地服务器使用'(LOCAL)')
/ K5 U& y2 {" _GO
# \6 w0 m& \9 w" U% Y+ V) X; v2 F
: I! I! v) A7 C3 ~4 A8 E+ F: ^- l! `7 Z0 o* ]( r
3 j% T/ ~+ c" }8 }

' a$ J, j, [: c% z
* n" Q" o) n+ G% e2 A
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


Archiver|小黑屋|EGameol

GMT+8, 2025-12-4 15:27 , Processed in 0.066770 second(s), 29 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表