You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.3 KiB
49 lines
1.3 KiB
declare
|
|
dnomSport varchar2(10):='&vnomsport';
|
|
didReserv char(3);
|
|
ddateReserv date;
|
|
dheureDebut number;
|
|
dancienheureDebut char(3);
|
|
dmessage varchar2(200);
|
|
inexistant exception;
|
|
dcpt number;
|
|
dnb number:=0;
|
|
cursor cur is select heureDebut, idReserv, dateReserv
|
|
from creneau C, reservation R, terrain T, sport S
|
|
where S.nomSport = dnomSport
|
|
and S.nomSport=T.nomSport
|
|
and T.idTerrain=R.idTerrain
|
|
and R.numCreneau=C.numCreneau
|
|
order by 1,3;
|
|
begin
|
|
dmessage:='nom du sport inexistant';
|
|
select count(*) into dcpt
|
|
from sport
|
|
where nomSport=dnomSport;
|
|
if dcpt=0
|
|
then raise inexistant;
|
|
else
|
|
open cur;
|
|
fetch cur into dheureDebut, didReserv, ddateReserv;
|
|
while cur%FOUND
|
|
loop
|
|
insert into tresultat values('heure de début:'||to_char(dheureDebut));
|
|
dancienheureDebut:=dheureDebut;
|
|
while dancienheureDebut=dheureDebut and cur%FOUND
|
|
loop
|
|
insert into tresultat values (didReserv||' date:'||ddateReserv);
|
|
dnb:=dnb+1;
|
|
fetch cur into dheureDebut, didReserv, ddateReserv;
|
|
end loop;
|
|
end loop;
|
|
close cur;
|
|
insert into tresultat values ('Nombre de réservations total pour ce sport : '||to_char(dnb));
|
|
end if;
|
|
exception
|
|
when inexistant then insert into tresultat values (dmessage);
|
|
end;
|
|
|
|
|
|
|
|
|