查看: 4818|回复: 5

萌新提问,关于getbosslog和setbosslog

[复制链接]

新人上路

枫币
23
威望
0
贡献
1
在线时间
1 小时
注册时间
2020-9-23
QQ
发表于 2020-9-24 14:58:25 | 显示全部楼层 |阅读模式

首先我现在想要实现一个 每日打副本次数的功能,有个大佬和我说用setbosslog就行了,然后我也是这么用了,但是实际上第二天发现数据并没有被清掉,我很疑惑,然后突然想到这类数据应该是存在数据库,于是乎就去看了数据库

然后我发现在调用setbosslog的时候,实际上会在表bosslog上面加一行新数据。
比如
setbosslog("测试");
然后表bosslog下面就会多出一个
bossid=“测试”的一行。
如果再调用

setbosslog("测试");
表bosslog下面就会再多出一个
bossid=“测试”的一行。

所以我现在大致是是这么认为,getbosslog("测试")  就是获取bosslog表下面的bossid为"测试"的数量?但是如果是这样的话,在隔天也就是第二天的时候,这个表下面的所有行都应该被清掉才对,不然第二天在调用getbosslog的时候 数量不就是还会包括之前的了?

版主

枫币
4510
威望
8
贡献
63
在线时间
588 小时
注册时间
2019-3-1
发表于 2020-9-24 15:20:45 | 显示全部楼层
getbosslog這函數裡面的數據庫查詢命令有一段是取24小時內的

新人上路

枫币
23
威望
0
贡献
1
在线时间
1 小时
注册时间
2020-9-23
QQ
 楼主| 发表于 2020-9-24 15:38:45 | 显示全部楼层
宗達 发表于 2020-9-24 15:20
getbosslog這函數裡面的數據庫查詢命令有一段是取24小時內的

我现在getbosslog的时候,会把之前的全部都算上,很奇怪,有点懵。

点评

自己看你函數對數據庫的命令怎麼下的  发表于 2020-9-25 17:03

新人上路

枫币
23
威望
0
贡献
1
在线时间
1 小时
注册时间
2020-9-23
QQ
 楼主| 发表于 2020-9-24 15:46:04 | 显示全部楼层
宗達 发表于 2020-9-24 15:20
getbosslog這函數裡面的數據庫查詢命令有一段是取24小時內的

我看了别人写的,也都是gebosslog,看上去没有什么问题

初级会员

枫币
182
威望
0
贡献
9
在线时间
12 小时
注册时间
2019-12-26
发表于 2020-9-29 11:31:29 | 显示全部楼层
1,直接打开navicat
2,新建查询
3, 复制我下面的代码
4, 执行

# 开启事件定时任务
SHOW VARIABLES LIKE '%event_scheduler%';
SET GLOBAL event_scheduler = ON;  

# Linux系统 需要修改存储过程的结束符 win系统不管
delimiter $

# 定义存储过程
CREATE PROCEDURE delete_bosslog()
TRUNCATE table bosslog

# 弄完之后把存储过程还原
delimiter ;

# 设置定时任务
create event delete_bosslog_event
        on SCHEDULE every 1 day
STARTS TIMESTAMP '2020-09-29 11:18:00' # 这个时间写你数据库所在服务器的时间 记得修改时区
Do
        call delete_bosslog;
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|枫叶物语冒险岛单机 | 本站已运行:

枫叶物语可能会倒闭,但是绝对不会变质。

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖QQ客服返回顶部