你其实并不需要去固定执行(虽然这个也可以用sql本身的计划任务),你只需要在用户使用的时候,去判断上次上次执行时间与数据库的时间是否在同一月就行了。
简单来说,比如你的数据库中记录这个30的是一条记录,id为1,count为计数,lasttime保存的是最后一次使用此功能时间,那么当用户使用这个功能的时候,先查出id为1的这条记录,假定也将信息保存在count和lasttime两个变量中,然后再用select GETDATE() 从数据库读取时间保存在curtime中,那么你只需要比较一下lasttime和curtime的月份是否相同,如果相同,那么再检查count是不是大于0,如果是,那就用此功能,同时将数据库的count减1,如果不同,那么update那个id为1的记录的count为29,然后再使用此功能。
SQL SERVER 自带一个叫“计划任务”可以执行一些SQL操作。SQL可以自己写。非常好用,建议使用。