超级菜鸟问题:如何执行这个script block? 
有如下这个script,如何执行它呢?难道非要封装到一个procedure里??DECLARE--check if there are some duplicated records in table requestactivity
v_requestid requestactivity.requestid%TYPE;
v_requesttime varchar2(19);
cursor c_requestidtime is 
select requestid, requesttime
from (
select requestid, to_char(timefrom,'YYYY/MM/DD HH24:MI:SS') requesttime
from requestactivity
where to_char(timefrom,'YYYY/MM/DD') > '2007/04/12' 
and to_char(timefrom,'YYYY/MM/DD') < '2007/04/15' 
and StatusComment IS NOT NULL 
and StatusComment <> N' ' order by requestid
) a
group by requestid, requesttime
having count(*)>1;--check further if there are other records, 
--which have the same requestid and was inserted behind the time of duplicated records insertion 
cursor c_requestactivity_key(p_reid requestactivity.REQUESTID%TYPE, p_retime varchar2) is
select requestid, timefrom, requeststatus 
from requestactivity
where requestid = p_reid
and to_char(timefrom,'YYYY/MM/DD HH24:MI:SS') > p_retime
order by timefrom desc; v_temp_requestid requestactivity.requestid%TYPE;
v_temp_timefrom requestactivity.timefrom%TYPE;
v_temp_requeststatus requestactivity.requeststatus%TYPE;
BEGINOPEN c_requestidtime;LOOP
FETCH c_requestidtime INTO v_requestid, v_requesttime;
EXIT WHEN c_requestidtime%NOTFOUND;--modify other the records which have the same requestid 
--and was inserted behind the time of duplicated records insertion
OPEN c_requestactivity_key(v_requestid, v_requesttime);LOOP
FETCH c_requestactivity_key INTO v_temp_requestid, v_temp_timefrom, v_temp_requeststatus;
EXIT WHEN c_requestactivity_key%NOTFOUND;
--add 1 second in column of "timefrom" for these records, 
--which have the same requestid as duplicated records 
--and was inserted behind the time of duplicated records insertion.
update requestactivity
set timefrom = timefrom + 1/(24*60*60)
where requestid = v_temp_requestid
and timefrom = v_temp_timefrom
and requeststatus = v_temp_requeststatus;
END LOOP;CLOSE c_requestactivity_key;--modify the duplicated records
--select one of these duplicated records
select requestid, timefrom, requeststatus
into v_temp_requestid, v_temp_timefrom, v_temp_requeststatus
from requestactivity
where requestid = v_requestid 
and to_char(timefrom,'YYYY/MM/DD HH24:MI:SS') = v_requesttime 
and rownum <= 1; --add 1 second in column of "timefrom" for one of these duplicated records
update requestactivity
set timefrom = timefrom + 1/(24*60*60)
where requestid = v_temp_requestid
and timefrom = v_temp_timefrom
and requeststatus = v_temp_requeststatus;
END LOOP;CLOSE c_requestidtime;COMMIT;END;