1楼的朋友中给出了两个方案: 第一个是windows系统的命令。首先这个windows系统的事件event只能精确到秒。精确到毫秒的话不行。其次,如果配置服务器环境的时候搞忘了在运行中输入这个命令就麻烦了。所以我需要的是一条SQL语句。实现我提到的功能。 第二个方案:这个方案用到了mysql 的EVENT,这个正是我需要.但是: mysql> CREATE EVENT myevent -> ON SCHEDULE EVERY 1 DAY STARTS '2009-10-24 02:00:00' -> DO -> delete from t where ptime <date_sub(curdate(),interval 3 day); 你给出的这条创建EVENT的语句。没有用,我的程序中使用的是和你一样的语句: create event if not exists Event_ResetFreeRoomTaskInfo on schedule every 1 day starts '2013-8-29 00:00:00' do truncate table playerfreeroomtaskstatus; 上面这条语句并不会在每天的00:00:00删除表playerfreeroomtaskstatus中的数据.所以2楼您提供的信息对我没有任何用处。 3楼。你这个东西我都看不懂是个什么东西:“0 0 * * * mysql -uroot -pxxxx -e "truncate table test;" ”哎 求正解啊。。
命题: 每日 02:00 am 定时删除 表 t (id int primary key,ptime TIMESTAMP DEFAULT CURRENT_TIMESTAMP) 中三天以前的记录。 ======================================= 方法一:操作系统 ======================================= (...
2012
添加一行 0 0 * * * mysql -uroot -pxxxx -e "truncate table test;"
第一个是windows系统的命令。首先这个windows系统的事件event只能精确到秒。精确到毫秒的话不行。其次,如果配置服务器环境的时候搞忘了在运行中输入这个命令就麻烦了。所以我需要的是一条SQL语句。实现我提到的功能。
第二个方案:这个方案用到了mysql 的EVENT,这个正是我需要.但是:
mysql> CREATE EVENT myevent
-> ON SCHEDULE EVERY 1 DAY STARTS '2009-10-24 02:00:00'
-> DO
-> delete from t where ptime <date_sub(curdate(),interval 3 day);
你给出的这条创建EVENT的语句。没有用,我的程序中使用的是和你一样的语句:
create event if not exists Event_ResetFreeRoomTaskInfo on schedule every 1 day starts '2013-8-29 00:00:00' do truncate table playerfreeroomtaskstatus;
上面这条语句并不会在每天的00:00:00删除表playerfreeroomtaskstatus中的数据.所以2楼您提供的信息对我没有任何用处。
3楼。你这个东西我都看不懂是个什么东西:“0 0 * * * mysql -uroot -pxxxx -e "truncate table test;" ”哎 求正解啊。。