高手的园地
我想实现一个记录日志的功能,其中有一项是控制日志在数据库中的时间(比如说保留为n天),过了n 天以后就要删除旧的日志.我是这样实现的,可是就是不能删除掉数据的.
integer li_day,li_row,num
string path,id,days,str
date riq,t_date
datetime a,c,b
riq=today()
num=7
path="c:\"
id='1'
select count(*) into :li_row from setup;
if li_row=0 then
INSERT INTO setup ( path,lasts,daynum,setupday_id )
VALUES ( :path,:riq,:num,:id );
else
关键要看下面的代码:li_day是表setup中的字段为保留日志的天数,days为日志表howdo中的日志日期字段.
SELECT setup.daynum into:li_day FROM setup ;
declare cur_dept cursor for
SELECT howdo.days FROM howdo ;
open cur_dept;
fetch cur_dept into:b;
t_date=relativedate(today(),-(li_day))
c=datetime(t_date)
do while t_date=date(b)
DELETE FROM howdo WHERE howdo.days = :b ;
fetch cur_dept into:b;
loop
close cur_dept ;
end if