现在MYSQL数据库中有一用户表,里面包含注册时间(reigst_time)和状态字段(status),想实现若用户3个月内没有激活(用邮箱激活,已实现,激活后status=1,未激活status=0),就把用户的记录删除,请教各位高手,这要如何实现??

解决方案 »

  1.   

    delete from 用户表 where reigst_time<DATE_SUB(CURDATE(),INTERVAL 3 MONTH) and status=0;通过你的操作系统的计划任务,每天定时运行一下这个SQL语句就行了。
      

  2.   

    MySQL 中也以用事件create event (Mysql 5 以上)来实现,定时执行一些命令。但个人感觉上不如操作系统上的可靠。
      

  3.   

    Linux系统有cron定时任务,在这里面做即可。
      

  4.   

    写个存储过程,如果你是5.1以上版本,那可以用event建立调度任务
    否则,通过linux的cron定时任务或windows的计划任务调度;或自己写个程序用时钟触发调度。
      

  5.   

    mysql 5.1 以上支持事务高度器,亲测,很好用,